My host does no longer provide any node or npm or yarn.
Project are partially migrated to shell.nix already.
I still need to migrate all projects. But I'm not working to much on
frontend and don't need to re compile assets to often, so no worries.
Some stuff will not work anymore, e.g. coc within neovim needs nodejs.
That's broken for now, but I don't care to much, not sure whether I used
it at all.
That will be part of neovim migration to home-manager / nix.
Do not create desktop item in file system, instead use proper xdg
configuration option. That way we do not need to hard code location of
file and can use a proper set with validation from module.
There is a module for htop, so use that one instead of home.file.
The cool thing is: It has "constants" for some strange integer values.
So nix version is actually readable while the generated config is
strange.
That's a cool pro of nix files.
As we add more and more files, move to set with curly braces.
Maybe home-files is a better approach, but not documented and I don't
understand it to well yet. I guess I've to create a derivation which
"builds" all the files. Maybe to complicated right now.
Might also make sense to build modules for such tools in future where I
can configure within nix, just like git.nix, and it will generate the
config. Might be cool for some things where configs might change, but
the actual things to configure might not. The generation of the file can
change within nix, while configuration within nix stays the same?! ;)
Do not hard code all values, instead configure them within home.nix.
This is more for learning purposes.
But port and allow might also be changed more frequently in general.
home-manager doesn't provide a systemd service itself.
That's why we build one ourself.
That also revealed a change in our directory structure.
The structure is now documented within readme.