Anthony Rodriguez
6ab835555c
As my NixOS configuration kept growing, I noticed that I don't need home-manager as much as I did before. A lot of what I need is just a way to map nix attrsets to the program's respective configuration format, which is something that I can now do myself, as my nix knowledge got more extensive. After all of this, I decided to completely get rid of home-manager, and switch to a simpler solution called hjem, which just lets me write files to my home directory that are automatically symlinked using `systemd-tmpfiles`. This allows me to simplify my configuration, remove the separation between NixOS and home-manager modules, and cut my eval times by quite a lot (which allows for faster `nixos-rebuild switch`!).
36 lines
1.2 KiB
Nix
36 lines
1.2 KiB
Nix
{
|
|
lib,
|
|
inputs,
|
|
config,
|
|
pkgs,
|
|
...
|
|
}: let
|
|
inherit (lib) mkIf;
|
|
inherit (config.local.systemVars) username;
|
|
in {
|
|
config = mkIf config.local.modules.hyprland.enable {
|
|
hjem.users.${username} = {
|
|
packages = [inputs.anyrun.packages.${pkgs.system}.anyrun-with-all-plugins];
|
|
files = {
|
|
".config/anyrun/config.ron".source = ./config.ron;
|
|
".config/anyrun/applications.ron".text = ''
|
|
Config(
|
|
// Also show the Desktop Actions defined in the desktop files, e.g. "New Window" from LibreWolf
|
|
desktop_actions: true,
|
|
max_entries: 5,
|
|
// The terminal used for running terminal based desktop entries, if left as `None` a static list of terminals is used
|
|
// to determine what terminal to use.
|
|
terminal: Some(Terminal(
|
|
// The main terminal command
|
|
command: "foot",
|
|
// What arguments should be passed to the terminal process to run the command correctly
|
|
// {} is replaced with the command in the desktop entry
|
|
args: "uwsm app -- {}",
|
|
)),
|
|
)
|
|
'';
|
|
".config/anyrun/style.css".source = ./style.css;
|
|
};
|
|
};
|
|
};
|
|
}
|