diff --git a/hosts/dunamis/users/user/home-configuration.nix b/hosts/dunamis/users/user/home-configuration.nix index 8f13934..2a691c1 100644 --- a/hosts/dunamis/users/user/home-configuration.nix +++ b/hosts/dunamis/users/user/home-configuration.nix @@ -1 +1 @@ -{flake, ...}: {imports = [flake.modules.shared.user];} +{flake, ...}: {imports = [flake.modules.users.user];} diff --git a/hosts/eldrid/users/user/home-configuration.nix b/hosts/eldrid/users/user/home-configuration.nix index 8f13934..2a691c1 100644 --- a/hosts/eldrid/users/user/home-configuration.nix +++ b/hosts/eldrid/users/user/home-configuration.nix @@ -1 +1 @@ -{flake, ...}: {imports = [flake.modules.shared.user];} +{flake, ...}: {imports = [flake.modules.users.user];} diff --git a/hosts/legion/users/user/home-configuration.nix b/hosts/legion/users/user/home-configuration.nix index 8f13934..2a691c1 100644 --- a/hosts/legion/users/user/home-configuration.nix +++ b/hosts/legion/users/user/home-configuration.nix @@ -1 +1 @@ -{flake, ...}: {imports = [flake.modules.shared.user];} +{flake, ...}: {imports = [flake.modules.users.user];} diff --git a/hosts/morphius/users/user/home-configuration.nix b/hosts/morphius/users/user/home-configuration.nix index 8f13934..2a691c1 100644 --- a/hosts/morphius/users/user/home-configuration.nix +++ b/hosts/morphius/users/user/home-configuration.nix @@ -1 +1 @@ -{flake, ...}: {imports = [flake.modules.shared.user];} +{flake, ...}: {imports = [flake.modules.users.user];} diff --git a/hosts/sarien/users/user/home-configuration.nix b/hosts/sarien/users/user/home-configuration.nix index 8f13934..2a691c1 100644 --- a/hosts/sarien/users/user/home-configuration.nix +++ b/hosts/sarien/users/user/home-configuration.nix @@ -1 +1 @@ -{flake, ...}: {imports = [flake.modules.shared.user];} +{flake, ...}: {imports = [flake.modules.users.user];} diff --git a/modules/shared/user/default.nix b/modules/shared/user/default.nix deleted file mode 100644 index 8499b4a..0000000 --- a/modules/shared/user/default.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ - imports = [ - ./common.nix - ./flatpak.nix - ./programs.nix - ]; -} diff --git a/modules/shared/user/common.nix b/modules/users/user/common.nix similarity index 90% rename from modules/shared/user/common.nix rename to modules/users/user/common.nix index e8b74c5..c97e05d 100644 --- a/modules/shared/user/common.nix +++ b/modules/users/user/common.nix @@ -32,4 +32,6 @@ videos = homeDir "vids"; music = homeDir "music"; }; + + dconf.settings."org/gnome/desktop/interface".enable-animations = false; } diff --git a/modules/shared/user/flatpak.nix b/modules/users/user/flatpak.nix similarity index 89% rename from modules/shared/user/flatpak.nix rename to modules/users/user/flatpak.nix index 35ca03e..2a7d574 100644 --- a/modules/shared/user/flatpak.nix +++ b/modules/users/user/flatpak.nix @@ -34,6 +34,14 @@ "com.github.PintaProject.Pinta" # bootleg paint "org.gimp.GIMP" # the holy gimp "org.kde.kdenlive" # video editor + { + appId = "com.collabora.Office"; + bundle = builtins.fetchurl { + url = "https://cdn.collaboraoffice.com/collaboraoffice-v25.04.7.2_final.flatpak"; + name = "collaboraoffice-v25.04.7.2_final.flatpak"; + sha256 = "RHEXrlymoWnNmdVEzVh85/icxQsWVpLpgkJubi7SpsY="; + }; + } ] ++ [ # chatting @@ -99,6 +107,9 @@ "/nix/store:ro" "xdg-config/gtk-3.0:ro" "xdg-config/gtk-4.0:ro" + "xdg-config/Kvantum:ro" + "xdg-config/qt5ct:ro" + "xdg-config/qt6ct:ro" "xdg-run/pipewire-0" "~/.local/share/icons:ro" ]; @@ -109,7 +120,7 @@ }; "app.grayjay.Grayjay".Context.sockets = ["x11" "!wayland" "!fallback-x11"]; # because CEF "ca.edestcroix.Recordbox".Context.filesystems = ["xdg-music"]; - "md.obsidian.Obsidian".Context.filesystems = ["~/Obsidian"]; + "md.obsidian.Obsidian".Context.filesystems = ["~/Obsidian" "~/.ssh"]; # .ssh for git plugin "com.valvesoftware.Steam" = { Context = { inherit (game) sockets; @@ -125,6 +136,7 @@ inherit (game) sockets; filesystems = game.folder "heroic"; }; + "com.collabora.Office" = {inherit (homeNoNetwork) Context;}; "com.github.PintaProject.Pinta" = {inherit (homeNoNetwork) Context;}; "com.logseq.Logseq" = {inherit (homeNoNetwork) Context;}; "com.obsproject.Studio" = {inherit (homeNoNetwork) Context;}; diff --git a/modules/shared/user/programs.nix b/modules/users/user/programs.nix similarity index 77% rename from modules/shared/user/programs.nix rename to modules/users/user/programs.nix index 6c83853..a1a9df5 100644 --- a/modules/shared/user/programs.nix +++ b/modules/users/user/programs.nix @@ -1,9 +1,10 @@ { config, + inputs, lib, osConfig, + perSystem, pkgs, - inputs, ... }: let inherit (lib) mkIf; @@ -22,11 +23,12 @@ in { fish.enable = true; oh-my-posh.enable = true; }; + syncthing.enable = true; terminal.wezterm.enable = true; terminal.ghostty.enable = true; systemd.user.settings.Manager.DefaultEnvironment = { - TERMINAL = "ghostty"; + TERMINAL = "wezterm"; HISTFILE = ''"$XDG_STATE_HOME"/bash/history''; CARGO_HOME = ''"$XDG_DATA_HOME"/cargo''; DOTNET_CLI_HOME = ''"$XDG_DATA_HOME"/dotnet''; @@ -49,6 +51,8 @@ in { bat.enable = true; # cat in rust btop.enable = true; # direnv.enable = true; + distrobox.enable = true; + difftastic.enable = true; eza.enable = true; # ls in rust fd.enable = true; # find in rust fzf.enable = true; # fuzzy finder in rust @@ -67,16 +71,15 @@ in { } { btop.settings.update_ms = 200; - # direnv.silent = true; - git = { - delta.enable = true; # diff in rust - signing.format = "ssh"; - aliases = { - cl = "clone"; - co = "checkout"; - pom = "push origin main"; - }; - }; + + difftastic.git.enable = true; + difftastic.git.diffToolMode = true; + + git.signing.format = "ssh"; + + git.settings.alias.cl = "clone"; + git.settings.alias.co = "checkout"; + keychain.keys = ["id_ed25519"]; }; @@ -104,6 +107,29 @@ in { trashy # trash cli in rust up # ultimate plumber in go ] + ++ [ + (pkgs.writeShellApplication { + name = "rbw-ls"; + runtimeInputs = with pkgs; [rbw jq csvlens]; + text = '' + rbw ls --raw \ + | jq -r '["name","user","folder","id"], + ( .[] | [(.name // "none"), (.user // "none"), (.folder // "none"), .id]) + | @csv' \ + | csvlens + ''; + }) + (pkgs.writeShellApplication { + name = "rbw-get"; + runtimeInputs = with pkgs; [rbw wl-clipboard]; + text = ''rbw get --clipboard "$1" && sleep 5 && wl-copy -c''; + }) + (pkgs.writeShellApplication { + name = "rbw-totp"; + runtimeInputs = with pkgs; [rbw wl-clipboard]; + text = ''rbw totp --clipboard "$1" && sleep 5 && wl-copy -c''; + }) + ] ++ [ # misc apps adwaita-icon-theme @@ -118,11 +144,12 @@ in { celluloid # mpv gui in libadwaita # gnome-text-editor helvum # pipewire patchbay in rust - junction # app chooser + # junction # app chooser mission-center # task manager in rust (partly) (mkIf bluetooth.enable overskride) # bluetooth gui in rust pika-backup # borg gui in rust pwvucontrol # pipewire gui in rust + perSystem.zmx.default # sonusmix # pipewire routing tool in rust ];