diff --git a/home/packages/cli/shared.nix b/home/packages/cli/shared.nix index ad44e8a..a5c1873 100644 --- a/home/packages/cli/shared.nix +++ b/home/packages/cli/shared.nix @@ -24,7 +24,6 @@ lm_sensors # tools for reading hw sensors p7zip # 7zip fork with some improvements e2fsprogs # tools for creating and checking ext filesystems - lsof # list open files # Rust replacements procs # better ps diff --git a/home/packages/gui/default.nix b/home/packages/gui/default.nix index 493a5f5..73bb692 100644 --- a/home/packages/gui/default.nix +++ b/home/packages/gui/default.nix @@ -4,6 +4,8 @@ _: { ./stremio.nix ./nomacs.nix ./qbittorrent.nix + ./mpv.nix + ./obs.nix ./qimgv.nix ]; } diff --git a/home/packages/gui/mpv.nix b/home/packages/gui/mpv.nix new file mode 100644 index 0000000..7518265 --- /dev/null +++ b/home/packages/gui/mpv.nix @@ -0,0 +1,55 @@ +{ + lib, + pkgs, + osConfig, + ... +}: let + inherit (lib) mkIf; + + cfg = osConfig.myOptions.home-manager.programs.applications.mpv; +in { + config = mkIf cfg.enable { + home.packages = with pkgs; [ + mpv + ]; + + xdg.configFile = { + "mpv/mpv.conf".text = '' + loop=yes + ''; + + "mpv/input.conf".text = '' + # Vim keys seeking + l seek 5 + h seek -5 + j seek -60 + k seek 60 + + # Set A-B Loop key to g, since l was rebound + g ab-loop + + # Swap i and I, use lowercase for toggle + i script-binding stats/display-stats-toggle + I script-binding stats/display-stats + + UP add volume 2 + DOWN add volume -2 + + # Zooming + - add video-zoom -.25 + + add video-zoom .25 + + # Moving/panning video + kp8 add video-pan-y .05 + kp6 add video-pan-x -.05 + kp2 add video-pan-y -.05 + kp4 add video-pan-x .05 + kp5 set video-pan-x 0; set video-pan-y 0; set video-zoom 0 + + # Rotation + ctrl+r cycle_values video-rotate "90" "180" "270" "0" + ''; + }; + }; +} + diff --git a/home/programs/graphical/apps/obs.nix b/home/packages/gui/obs.nix similarity index 84% rename from home/programs/graphical/apps/obs.nix rename to home/packages/gui/obs.nix index 202d7df..8d4428b 100644 --- a/home/programs/graphical/apps/obs.nix +++ b/home/packages/gui/obs.nix @@ -9,13 +9,11 @@ cfg = osConfig.myOptions.home-manager.programs.applications.obs; in { config = mkIf cfg.enable { - programs.obs-studio.enable = true; - home.packages = with pkgs; [ + obs-studio obs-cli ]; }; } - diff --git a/home/programs/graphical/apps/default.nix b/home/programs/graphical/apps/default.nix index 771d9c0..78d7bea 100644 --- a/home/programs/graphical/apps/default.nix +++ b/home/programs/graphical/apps/default.nix @@ -3,7 +3,5 @@ _: { ./spotify ./vesktop ./webcord - ./mpv.nix - ./obs.nix ]; } diff --git a/home/programs/graphical/apps/mpv.nix b/home/programs/graphical/apps/mpv.nix deleted file mode 100644 index 91d5526..0000000 --- a/home/programs/graphical/apps/mpv.nix +++ /dev/null @@ -1,51 +0,0 @@ -{ - lib, - pkgs, - osConfig, - ... -}: let - inherit (lib) mkIf; - - cfg = osConfig.myOptions.home-manager.programs.applications.mpv; -in { - config = mkIf cfg.enable { - programs.mpv = { - enable = true; - - config = { - loop = "yes"; - }; - - bindings = { - l = "seek 5"; - h = "seek -5"; - j = "seek -60"; - k = "seek 60"; - - # Set A-B Loop key to g, since l was rebound - g = "ab-loop"; - - # Swap i and I, use lowercase for toggle - i = "script-binding stats/display-stats-toggle"; - I = "script-binding stats/display-stats"; - - UP = "add volume 2"; - DOWN = "add volume -2"; - - # Zooming - "-" = "add video-zoom -.25"; - "+" = "add video-zoom .25"; - - # Moving/panning video - kp8 = "add video-pan-y .05"; - kp6 = "add video-pan-x -.05"; - kp2 = "add video-pan-y -.05"; - kp4 = "add video-pan-x .05"; - kp5 = "set video-pan-x 0; set video-pan-y 0; set video-zoom 0"; - - # Rotation - "ctrl+r" = "cycle_values video-rotate '90' '180' '270' '0'"; - }; - }; - }; -} diff --git a/home/programs/graphical/apps/spotify/default.nix b/home/programs/graphical/apps/spotify/default.nix index 811b6fc..3f6620f 100644 --- a/home/programs/graphical/apps/spotify/default.nix +++ b/home/programs/graphical/apps/spotify/default.nix @@ -28,10 +28,8 @@ in { colorScheme = "mocha"; enabledExtensions = with spicePkgs.extensions; [ - #adblock # I currently have premium - volumePercentage fullAppDisplay - shuffle + shuffle # shuffle+ (special characters are sanitized out of ext names) hidePodcasts playlistIcons lastfm diff --git a/home/programs/graphical/wms/hyprland/config/keybinds.nix b/home/programs/graphical/wms/hyprland/config/keybinds.nix index 22b4f17..58d1d1d 100644 --- a/home/programs/graphical/wms/hyprland/config/keybinds.nix +++ b/home/programs/graphical/wms/hyprland/config/keybinds.nix @@ -181,12 +181,6 @@ "SUPER_SHIFT, mouse_up, focusmonitor, -1" "SUPER_SHIFT, bracketright, focusmonitor, +1" "SUPER_SHIFT, bracketleft, focusmonitor, -1" - - # - # Global keybinds (passing keys to other programs) - # - "CTRL, F10, pass, ^(com\.obsproject\.Studio)$" - ]; # Mouse bindings diff --git a/home/programs/terminal/tools/default.nix b/home/programs/terminal/tools/default.nix index ceff65d..6dd48fb 100644 --- a/home/programs/terminal/tools/default.nix +++ b/home/programs/terminal/tools/default.nix @@ -14,6 +14,5 @@ _: { ./bottom.nix ./bat.nix ./nix-index.nix - ./iamb.nix ]; } diff --git a/home/programs/terminal/tools/iamb.nix b/home/programs/terminal/tools/iamb.nix deleted file mode 100644 index 31ad96d..0000000 --- a/home/programs/terminal/tools/iamb.nix +++ /dev/null @@ -1,48 +0,0 @@ -{ - lib, - pkgs, - config, - osConfig, - ... -}: let - inherit (lib) mkIf; - - cfg = osConfig.myOptions.home-manager.programs.applications.iamb; -in { - config = mkIf cfg.enable { - home.packages = with pkgs; [ iamb ]; - - xdg.configFile."iamb/config.json".text = builtins.toJSON { - settings = { - log_level = "warn"; - reaction_display = true; - reaction_shortcode_display = false; - read_receipt_send = false; - read_receipt_display = true; - request_timeout = 15000; - typing_notice_send = true; - typing_notice_display = true; - - image_preview = { - protocol.type = "kitty"; - size = { - width = 80; - height = 24; - }; - }; - }; - - default_profile = cfg.defaultProfile; - profiles = lib.mapAttrs (name: profile: { - user_id = profile.userId; - url = profile.homeServer; - }) cfg.profiles; - - dirs = { - cache = "${config.xdg.cacheHome}/iamb/"; - logs = "${config.xdg.dataHome}/iamb/logs/"; - downloads = "${config.xdg.userDirs.download}/"; - }; - }; - }; -} diff --git a/hosts/voyager/default.nix b/hosts/voyager/default.nix index f7ee539..8e17d6b 100644 --- a/hosts/voyager/default.nix +++ b/hosts/voyager/default.nix @@ -71,7 +71,6 @@ ".config/vesktop" ".config/WebCord" ".local/share/Smart Code ltd/Stremio" - ".config/obs-studio" # Tools ".local/share/gnupg" @@ -186,13 +185,6 @@ qimgv.enable = true; qbittorrent.enable = true; obs.enable = true; - iamb = { - enable = true; - profiles.default = { - userId = "@itsdrike:envs.net"; - homeServer = "https://matrix.envs.net"; - }; - }; }; }; diff --git a/options/home/programs/default.nix b/options/home/programs/default.nix index 639dcc4..73ae056 100644 --- a/options/home/programs/default.nix +++ b/options/home/programs/default.nix @@ -2,10 +2,6 @@ inherit (lib) mkEnableOption mkOption types; in { - imports = [ - ./iamb.nix - ]; - options.myOptions.home-manager.programs = { launchers = { wofi.enable = mkEnableOption "Wofi launcher"; diff --git a/options/home/programs/iamb.nix b/options/home/programs/iamb.nix deleted file mode 100644 index fc99bd3..0000000 --- a/options/home/programs/iamb.nix +++ /dev/null @@ -1,51 +0,0 @@ -{ - lib, - config, - ... -}: let - inherit (lib) mkEnableOption mkOption types mkIf; - - cfg = config.myOptions.home-manager.programs.applications.iamb; -in -{ - options.myOptions.home-manager.programs.applications.iamb = { - enable = mkEnableOption "iamb (vim-inspired terminal Matrix client)"; - defaultProfile = mkOption { - type = types.str; - default = "default"; - description = "Default profile to be used when the app starts"; - }; - profiles = mkOption { - type = types.attrsOf (types.submodule { - options = { - userId = mkOption { - type = types.str; - example = "@itsdrike:envs.net"; - description = "Your Matrix user ID"; - }; - homeServer = mkOption { - type = types.nullOr types.str; - example = "https://matrix.envs.net"; - default = null; - description = '' - If your homeserver is located on a different domain than the server part - of the `userId`, then you can explicitly specify a homeserver URL to use. - ''; - }; - }; - }); - default = {}; - description = "Profiles for the iamb client, keyed by profile name"; - }; - }; - - config = mkIf cfg.enable { - assertions = [ - { - assertion = builtins.elem cfg.defaultProfile (lib.attrNames cfg.profiles); - message = "Default profile must be present in profiles configuration"; - } - ]; - }; -} -