# Надо удалить оригинальный файл, прежде чем делать симлинк # Некоторые проги клали хуй на симлинки и заменяют их своими файлами # Таких прог я ебал рот и проклинал хуесосов разработчиков # Если выдаёт ошибку про home-manager сервир при ребилде, # Значит такой файл уже существует и симлинк туда кинуть нельзя # Для таких файлов я сделал каталог shit # Я не уверен надо ли писать "config.lib.file.mkOutOfStoreSymlink" # Вроде это более простой симлинк, чем просто ссылка на файл # Но мб меня обманули { pkgs, config, ... }: let home-dir = "backups"; # Имя каталога для бекапов. Мб захочу поменять dir = "${config.home.homeDirectory}/${home-dir}"; in { home.file = { # В .config этим нельзя кидать "${home-dir}".source = config.lib.file.mkOutOfStoreSymlink "/mnt/${home-dir}"; # Чтоб остальные симлинки были от ~/backups # Secrets ".password-store".source = config.lib.file.mkOutOfStoreSymlink "${dir}/Backups/.password-store"; # Для утилиты pass ".ssh".source = config.lib.file.mkOutOfStoreSymlink "${dir}/Backups/.ssh"; # Games # ".local/share/osu-wine/osu!/Replays".source = config.lib.file.mkOutOfStoreSymlink "${dir}/Games/osu!/Replays"; # ".local/share/osu-wine/osu!/Skins".source = config.lib.file.mkOutOfStoreSymlink "${dir}/Games/osu!/Skins"; # ".local/share/osu-wine/osu!/Songs".source = config.lib.file.mkOutOfStoreSymlink "${dir}/Games/osu!/Songs"; # ".local/share/osu-wine/osu!/collection.db".source = config.lib.file.mkOutOfStoreSymlink "${dir}/Games/osu!/collection.db"; # ".local/share/osu-wine/osu!/osu!.buliway.cfg".source = config.lib.file.mkOutOfStoreSymlink "${dir}/Games/osu!/osu!.buliway.cfg"; # Browsers. Мб сделать .force, чтоб удалить сток. А мб руками удалить сток перед этим ".mozilla".source = config.lib.file.mkOutOfStoreSymlink "${dir}/Backups/Apps/.mozilla"; ".librewolf".source = config.lib.file.mkOutOfStoreSymlink "${dir}/Backups/Apps/.librewolf"; "Downloads/Telegram Desktop".source = config.lib.file.mkOutOfStoreSymlink "${dir}/Telegram Desktop"; # Временное решение, где `native-messaging-hosts/ff2mpv.json` ссылается на ~/ff2mpv.py "ff2mpv.py" = { source = "${pkgs.ff2mpv}/bin/ff2mpv.py"; executable = true; }; # Надо добавить симлинк на `native-messaging-hosts/ff2mpv.json`. # Сначала установить это на firefox, который мне не особо важен # А потом задать симлинк с firefox на librewolf, который мне важен # и который я не хочу редактировать через nix # Не знаю на счёт obs, chatbox, planify, calibre, discord, nekobox }; xdg.configFile = { # Это для каталога .config "qobuz-dl".source = config.lib.file.mkOutOfStoreSymlink "${dir}/Media/Music/Qobuz/.config/qobuz-dl"; # Конфиг для бекапа Qobuz музыки # Ебаный qt, как я тебя ненавижу # "Kvantum".source = ../shit/Kvantum; # "qt5ct".source = ../shit/qt5ct # "qt6ct".source = ../shit/qt6ct }; }