I am in the process of moving my config to home manager and am facing an issue when symlinking directories. For example, I want to link config/dracula/lxqt which contains all lxqt configurations.
The above code does not work, when I cd, it says the file or directory does not exist. However, adding source = config.lib.file.mkOutOfStoreSymlink ./config/dracula/lxqt; works in this particular case (and ideal because lxappearance changes the source files) but for other applications like emacs or vim, I would like to have declarative dotfiles. What is the workaround for this?
This seems to work after a reboot, but all the files are now read only with source = config.lib.file.mkOutOfStoreSymlink ./config/dracula/lxqt; and recurive = true/false
dr-xr-xr-x 2 root root 4096 Jan 1 1970 .
dr-xr-xr-x 3 root root 4096 Jan 1 1970 ..
-r--r--r-- 28 root root 379 Jan 1 1970 lxqt.conf
-r--r--r-- 28 root root 76 Jan 1 1970 lxqt-config-appearance.conf
-r--r--r-- 28 root root 30 Jan 1 1970 lxqt-config.conf
-r--r--r-- 28 root root 76 Jan 1 1970 session.conf
I want these writable but they appear to belong to root
The file appears to still be read only and connected to nix store lrwxrwxrwx 1 joe users 85 Jul 17 21:55 lxqt.conf -> /nix/store/xsn5nsrxmb733107dmms4hdafrlavvh4-home-manager-files/.config/lxqt/lxqt.conf