diff --git a/home/default.nix b/home/default.nix index 8edb0ac..3c46f22 100644 --- a/home/default.nix +++ b/home/default.nix @@ -7,7 +7,6 @@ imports = [ ./programs/neovim/. ./programs/git.nix - ./programs/lf/. ./programs/zsh.nix ./programs/tmux/. ]; @@ -40,6 +39,8 @@ ytfzf ]; + programs.yazi.enable = true; + programs.zoxide.enable = true; programs.rbw = { @@ -65,10 +66,7 @@ }; }; - programs.fzf = { - enable = true; - enableZshIntegration = true; - }; + programs.fzf.enable = true; programs.direnv.enable = true; } diff --git a/home/desktop/niri/default.nix b/home/desktop/niri/default.nix index d2e1d76..05865a5 100644 --- a/home/desktop/niri/default.nix +++ b/home/desktop/niri/default.nix @@ -136,6 +136,9 @@ "XF86AudioMute".action.spawn = ["wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"]; "XF86AudioMicMute".action.spawn = ["wpctl" "set-mute" "@DEFAULT_AUDIO_SOURCE@" "toggle"]; + "XF86AudioNext".action.spawn = ["playerctl" "next"]; + "XF86AudioPrev".action.spawn = ["playerctl" "previous"]; + "XF86AudioPlay".action.spawn = ["playerctl" "play-pause"]; "XF86MonBrightnessUp".action.spawn = ["brightness" "+10%"]; "XF86MonBrightnessDown".action.spawn = ["brightness" "10%-"]; diff --git a/home/desktop/utils/waybar.nix b/home/desktop/utils/waybar.nix index 02d90cb..72756b4 100644 --- a/home/desktop/utils/waybar.nix +++ b/home/desktop/utils/waybar.nix @@ -42,8 +42,8 @@ on-click = "${pkgs.pavucontrol}/bin/pavucontrol"; }; mpris = { - format = "{player_icon} {dynamic}"; - format-paused = "⏸️ {player_icon} {dynamic}"; + format = "{player_icon} {title}"; + format-paused = "⏸️ {player_icon} {title}"; player-icons = { default = "▶️"; mpd = "🎵"; diff --git a/home/programs/graphical.nix b/home/programs/graphical.nix index 301b503..df550f1 100644 --- a/home/programs/graphical.nix +++ b/home/programs/graphical.nix @@ -1,7 +1,6 @@ { pkgs, inputs, - user, ... }: { imports = [ @@ -26,6 +25,7 @@ youtube-music transmission_4-gtk feishin + grayjay # other element-desktop @@ -68,8 +68,12 @@ ]; }; - programs.chromium = { + programs.zed-editor = { enable = true; - package = pkgs.brave; + extensions = ["tsgo" "nix" "ansible" "helm"]; + userSettings = { + vim_mode = true; + }; + extraPackages = [pkgs.nixd pkgs.vtsls]; }; } diff --git a/home/programs/zsh.nix b/home/programs/zsh.nix index dfb2b02..2978de1 100644 --- a/home/programs/zsh.nix +++ b/home/programs/zsh.nix @@ -3,6 +3,7 @@ config, ... }: { + home.shell.enableZshIntegration = true; programs.starship.enable = true; programs.zsh = { enable = true; diff --git a/images/demonslayer.png b/images/demonslayer.png deleted file mode 100644 index 51b68eb..0000000 Binary files a/images/demonslayer.png and /dev/null differ diff --git a/images/nier.jpg b/images/nier.jpg deleted file mode 100644 index f832f96..0000000 Binary files a/images/nier.jpg and /dev/null differ diff --git a/images/nier2.jpg b/images/nier2.jpg deleted file mode 100644 index 3fbca6c..0000000 Binary files a/images/nier2.jpg and /dev/null differ diff --git a/images/nix-soft.png b/images/nix-soft.png deleted file mode 100644 index 3e252b8..0000000 Binary files a/images/nix-soft.png and /dev/null differ diff --git a/lib/mkconf.nix b/lib/mkconf.nix index 93f6100..972a413 100644 --- a/lib/mkconf.nix +++ b/lib/mkconf.nix @@ -20,6 +20,7 @@ in ++ [ home-manager.nixosModules.home-manager sops-nix.nixosModules.sops + ../nixos/modules/predicate.nix { home-manager = { useGlobalPkgs = true; diff --git a/lib/nixvim.nix b/lib/nixvim.nix index 1b26adb..1248388 100644 --- a/lib/nixvim.nix +++ b/lib/nixvim.nix @@ -28,6 +28,7 @@ in { scrolloff = 4; smoothscroll = true; ignorecase = true; + winborder = "rounded"; undofile = true; undodir = lua ''vim.fn.expand("$HOME/.local/share/nvim/undo")''; @@ -72,10 +73,10 @@ in { options.desc = "copy to clipboard"; } { - key = "ca"; - action = '' - require("actions-preview").code_actions - ''; + mode = "n"; + options.desc = "LSP Format"; + key = "cf"; + action = luaFunc "vim.lsp.buf.format({async = true;})"; } { key = ""; @@ -283,9 +284,6 @@ in { inlayHints = true; servers = { ts_ls.enable = true; - eslint = { - enable = true; - }; nixd = { enable = true; settings = { diff --git a/nixos/modules/predicate.nix b/nixos/modules/predicate.nix new file mode 100644 index 0000000..586f13c --- /dev/null +++ b/nixos/modules/predicate.nix @@ -0,0 +1,16 @@ +{ + lib, + config, + ... +}: { + options = { + allowUnfreePkgNames = lib.mkOption { + type = lib.types.listOf lib.types.str; + }; + }; + + config = { + nixpkgs.config.allowUnfreePredicate = pkg: + builtins.elem (lib.getName pkg) config.allowUnfreePkgNames; + }; +} diff --git a/nixos/modules/work.nix b/nixos/modules/work.nix index f22246a..cd358c3 100644 --- a/nixos/modules/work.nix +++ b/nixos/modules/work.nix @@ -6,14 +6,13 @@ }: let user = config.user; in { - nixpkgs.config.allowUnfreePredicate = pkg: - builtins.elem (lib.getName pkg) [ - # nonfree vscode required for dev containers - "vscode" - "steam-run" - "postman" - "drawio" # the creator had a hissyfit over a negative review: https://github.com/jgraph/drawio/discussions/4623 - ]; + allowUnfreePkgNames = [ + # nonfree vscode required for dev containers + "vscode" + "steam-run" + "postman" + "drawio" # the creator had a hissyfit over a negative review: https://github.com/jgraph/drawio/discussions/4623 + ]; nixpkgs.config.permittedInsecurePackages = [ "openssl-1.1.1w" # required for mongodb diff --git a/nixos/programs/gamer.nix b/nixos/programs/gamer.nix index 62452f1..7356755 100644 --- a/nixos/programs/gamer.nix +++ b/nixos/programs/gamer.nix @@ -1,16 +1,11 @@ -{ - lib, - pkgs, - ... -}: { - nixpkgs.config.allowUnfreePredicate = pkg: - builtins.elem (lib.getName pkg) [ - "steam" - "steam-unwrapped" - "steam-run" - "steam-original" - "osu-lazer" - ]; +{...}: { + allowUnfreePkgNames = [ + "steam" + "steam-unwrapped" + "steam-run" + "steam-original" + "osu-lazer" + ]; programs.steam = { enable = true; remotePlay.openFirewall = true; diff --git a/nixos/services/jellyfin.nix b/nixos/services/jellyfin.nix index 91c4347..3a74d6f 100644 --- a/nixos/services/jellyfin.nix +++ b/nixos/services/jellyfin.nix @@ -1,10 +1,11 @@ -{ +{pkgs, ...}: { users.groups.media = {}; services.jellyfin = { enable = true; group = "media"; # access to user stuff openFirewall = true; }; + environment.variables.JELLYFIN_FFMPEG = "${pkgs.jellyfin-ffmpeg}/bin/ffmpeg"; services.nginx.virtualHosts."movies.tristans.cloud" = { forceSSL = true; enableACME = true; diff --git a/nixos/workstation.nix b/nixos/workstation.nix index 5e6c633..3667716 100644 --- a/nixos/workstation.nix +++ b/nixos/workstation.nix @@ -102,4 +102,8 @@ services.udev.extraRules = '' KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="3434", ATTRS{idProduct}=="0e60", MODE="0660", GROUP="users", TAG+="uaccess", TAG+="udev-acl" ''; + + allowUnfreePkgNames = [ + "grayjay" + ]; }