O backup é só uma cópia do arquivo em algum outro lugar.
Se você fizer algo como: tar -czf backup_configs.tar.gz -C ~ .config e salvar esse arquivo backup_configs.tar.gz em algum lugar, ele ja serve de backup, com as suas configurações. Pra restaurar depois você faz tar -xzf backup_configs.tar.gz -C ~ .config. Aí se quiser o backup diario você pode por o comando num systemd timer pra gerar o backup diário.
Esse tipo de backup serve bem pra casos simples e arquivos pequenos. Se quiser algo um pouco mais avançado vc pode olhar pra alternativas como Chez Moi que são mais parrudas pra versionamento de configuração.
Drivers não são comuns de fazer backup, principalmente por que a maioria já vem embutido no kernel. E você geralmente não precisa de backup dos pacotes por que as versões ficam disponíveis nos repos da distro, então você pode dar rollback pra uma versão anterior especifica.
Navegador entra na mesma dos pacotes. A versão especifica mora no repo da distro e as configurações você mantem com o backup via Tar ou Chez Moi.
Aí pra projetos depende, se for código a solução é git com um remote externo tipo github, gitlab etc. Se forem outros tipos de projeto nada que um Tar não resolva tb.
Aí se realmente quiser uma solução mais universal do que o Chez Moi mas menos manual que tar, você pode olhar pra algo tipo Kopia que faz os backups e ja tem os comandos de restore e regras de persistência (numero de backups por dia, semana, mês, etc). A dificuldade geralmente fica em encontrar todos os arquivos que você quer fazer backup
Geralmente cópia de segurança ja serve, mas se você quiser backup resiliente de verdade vale seguir a regra do 3-2-1: 3 Cópias, 2 Formatos diferentes (ssd/hdd, provedor de nuvem diferente) e pelo menos 1 cópia fisicamente em outro lugar (casa de amigo, datacenter em outra cidade/pais).
Dito tudo isso, pro seu caso de uso provavelmente um tar basico jogando o arquivo num google drive ou HD externo já serve bem