diff --git a/flake.nix b/flake.nix index b917448..eb0f4db 100644 --- a/flake.nix +++ b/flake.nix @@ -30,7 +30,7 @@ username = "ahnwuoa"; homeDirectory = "/home/${username}"; }; - modules = [ user/home.nix ]; + modules = [ ./user ]; }; }; } diff --git a/user/bin.nix b/user/bin/default.nix similarity index 81% rename from user/bin.nix rename to user/bin/default.nix index 62c629d..dfc9ac6 100644 --- a/user/bin.nix +++ b/user/bin/default.nix @@ -13,7 +13,10 @@ in { name = ".local/bin/${x}"; value = { source = mkln x; }; }) - (builtins.attrNames (builtins.readDir ./bin)) + (builtins.filter + (x: x != "default.nix") + (builtins.attrNames (builtins.readDir ./.)) + ) ); home.packages = pkgs.lib.lists.flatten (builtins.attrValues deps); } diff --git a/user/default.nix b/user/default.nix new file mode 100644 index 0000000..be98305 --- /dev/null +++ b/user/default.nix @@ -0,0 +1,11 @@ +{ ... }: + +{ + imports = [ + ./bin + ./home.nix + ./share + ./theme.nix + ./xdg.nix + ]; +} diff --git a/user/home.nix b/user/home.nix index 41db78e..cfa9337 100644 --- a/user/home.nix +++ b/user/home.nix @@ -4,7 +4,7 @@ imports = [ ./xdg.nix ./theme.nix - ./bin.nix + ./bin ]; home.username = username; diff --git a/user/share/default.nix b/user/share/default.nix new file mode 100644 index 0000000..0820cd9 --- /dev/null +++ b/user/share/default.nix @@ -0,0 +1,12 @@ +{ ... }: + +{ + imports = [ + ./nsxiv-rifle.nix + ]; + + xdg.dataFile."bell.wav".source = ./bell.wav; + xdg.dataFile."wallpaper.png".source = ./wallpaper.png; + xdg.dataFile."recently-used.xbel".text = ""; + xdg.dataFile."RecentDocuments".text = ""; +} diff --git a/user/share/nsxiv-rifle.nix b/user/share/nsxiv-rifle.nix new file mode 100644 index 0000000..66d94b2 --- /dev/null +++ b/user/share/nsxiv-rifle.nix @@ -0,0 +1,31 @@ +{ ... }: + +{ + xdg.desktopEntries."nsxiv-rifle" = { + exec = "nsxiv-rifle %F"; + icon = "nsxiv"; + name = "nsxiv-rifle"; + mimeType = [ + "image/bmp" + "image/gif" + "image/jpeg" + "image/jpg" + "image/png" + "image/tiff" + "image/x-bmp" + "image/x-portable-anymap" + "image/x-portable-bitmap" + "image/x-portable-graymap" + "image/x-tga" + "image/x-xpixmap" + "image/webp" + "image/heic" + "image/svg+xml" + "application/postscript" + "image/jp2" + "image/jxl" + "image/avif" + "image/heif" + ]; + }; +} diff --git a/user/xdg.nix b/user/xdg.nix index 6a25f91..c65b37c 100644 --- a/user/xdg.nix +++ b/user/xdg.nix @@ -27,20 +27,16 @@ in { ''; fonts.fontconfig.enable = false; gtk.gtk2.configLocation = "${config.xdg.configHome}/gtk-2.0/gtkrc"; - xdg.dataFile."bell.wav".source = share/bell.wav; - xdg.dataFile."wallpaper.png".source = share/wallpaper.png; - xdg.dataFile."recently-used.xbel".text = ""; - xdg.dataFile."RecentDocuments".text = ""; xdg.mimeApps.enable = true; xdg.mimeApps.defaultApplications = let - image = "nsxiv.desktop"; + image = "nsxiv-rifle.desktop"; browser = "firefox.desktop"; text = "nvim.desktop"; media = "mpv.desktop"; in { "image/jpeg" = image; "image/png" = image; - "image/gif" = media; + "image/gif" = image; "audio/mpeg" = media; "audio/ogg" = media;