From b93a73ba98e94cbb971dce6554c7c55bce517c0e Mon Sep 17 00:00:00 2001 From: Arpit Chakladar Date: Sun, 26 Jul 2026 22:28:14 +0530 Subject: feat: replace feh with swayimg, refactor waybar icons and window rewrites - Replace feh module with swayimg (Wayland-native image viewer with Lua config) - Extract shared app icons into waybar lib, switch to title-based matching in window module - Remove gnome-keyring wrapper from ente-auth, drop custom desktop entry - Clean up bluetui/impala desktop entries (lowercase name, drop --class flag) - Add PASSWORD_STORE_DIR session variable to gopass - Switch Chromium to True Amoled Black theme --- modules/media/default.nix | 4 +-- modules/media/feh/default.nix | 31 ---------------------- modules/media/swayimg/default.nix | 55 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 57 insertions(+), 33 deletions(-) delete mode 100644 modules/media/feh/default.nix create mode 100644 modules/media/swayimg/default.nix (limited to 'modules/media') diff --git a/modules/media/default.nix b/modules/media/default.nix index 21fd596..b7c744f 100644 --- a/modules/media/default.nix +++ b/modules/media/default.nix @@ -1,8 +1,8 @@ -# Media - Multimedia tools (feh, grim, pamixer, playerctl, slurp, vlc, wf-recorder) +# Media - Multimedia tools (swayimg, grim, pamixer, playerctl, slurp, vlc, wf-recorder) { ... }: { imports = [ - ./feh + ./swayimg ./grim ./pamixer ./playerctl diff --git a/modules/media/feh/default.nix b/modules/media/feh/default.nix deleted file mode 100644 index 6caf96f..0000000 --- a/modules/media/feh/default.nix +++ /dev/null @@ -1,31 +0,0 @@ -# Feh - Lightweight image viewer and wallpaper setter -{ - config, - lib, - pkgs, - ... -}: -{ - options.media.feh = { - enable = lib.mkEnableOption "Enables feh."; - }; - - config = lib.mkIf config.media.feh.enable { - programs.feh = { - enable = true; - package = pkgs.feh; - }; - - xdg.mimeApps.defaultApplications = { - "image/bmp" = "feh.desktop"; - "image/gif" = "feh.desktop"; - "image/jpeg" = "feh.desktop"; - "image/png" = "feh.desktop"; - "image/tiff" = "feh.desktop"; - "image/webp" = "feh.desktop"; - "image/x-bmp" = "feh.desktop"; - "image/x-png" = "feh.desktop"; - "image/x-tga" = "feh.desktop"; - }; - }; -} diff --git a/modules/media/swayimg/default.nix b/modules/media/swayimg/default.nix new file mode 100644 index 0000000..96a568d --- /dev/null +++ b/modules/media/swayimg/default.nix @@ -0,0 +1,55 @@ +{ + config, + lib, + pkgs, + ... +}: +{ + options.media.swayimg = { + enable = lib.mkEnableOption "Enables swayimg."; + package = lib.mkPackageOption pkgs "swayimg" { }; + }; + + config = lib.mkIf config.media.swayimg.enable { + programs.swayimg = { + enable = true; + package = config.media.swayimg.package; + initLua = '' + swayimg.viewer.on_key("h", function() + local pos = swayimg.viewer.get_position() + swayimg.viewer.set_abs_position(pos.x + 10, pos.y) + end) + + swayimg.viewer.on_key("j", function() + local pos = swayimg.viewer.get_position() + swayimg.viewer.set_abs_position(pos.x, pos.y - 10) + end) + + swayimg.viewer.on_key("k", function() + local pos = swayimg.viewer.get_position() + swayimg.viewer.set_abs_position(pos.x, pos.y + 10) + end) + + swayimg.viewer.on_key("l", function() + local pos = swayimg.viewer.get_position() + swayimg.viewer.set_abs_position(pos.x - 10, pos.y) + end) + ''; + }; + + xdg.mimeApps.defaultApplications = { + "image/avif" = "swayimg.desktop"; + "image/bmp" = "swayimg.desktop"; + "image/gif" = "swayimg.desktop"; + "image/jpeg" = "swayimg.desktop"; + "image/jpg" = "swayimg.desktop"; + "image/png" = "swayimg.desktop"; + "image/svg+xml" = "swayimg.desktop"; + "image/tiff" = "swayimg.desktop"; + "image/webp" = "swayimg.desktop"; + "image/x-bmp" = "swayimg.desktop"; + "image/x-png" = "swayimg.desktop"; + "image/x-tga" = "swayimg.desktop"; + }; + }; +} -- cgit v1.2.3