diff --git a/home/terminal/home.nix b/home/terminal/home.nix index 12d9c01..c28428f 100644 --- a/home/terminal/home.nix +++ b/home/terminal/home.nix @@ -1,5 +1,6 @@ { lib, + osConfig, pkgs, self, ... @@ -17,12 +18,129 @@ (with pkgs; [ self.packages.${pkgs.stdenv.hostPlatform.system}.audacity bitwarden-desktop - obs-studio - wezterm - webcord + godot + inkscape + krita + nextcloud-client + obsidian + prismlauncher + + # System + pwvucontrol ]) + # Fonts + ++ (with pkgs; [ + google-fonts + nerd-fonts.fira-code + self.packages.${pkgs.stdenv.hostPlatform.system}.cal-sans ]); + home.file = let + godottemplates = pkgs.godot-export-templates-bin; + godotname = builtins.replaceStrings ["-"] ["."] godottemplates.version; + in { + ".local/share/godot/export_templates/${godotname}" = { + source = "${godottemplates}/share/godot/export_templates/${godotname}"; + }; + }; + + # OBS Studio + programs.obs-studio.enable = true; + + # Vesktop (Discord) + programs.vesktop.enable = true; + + # Open Tablet Driver configuration + xdg.configFile."OpenTabletDriver/settings.json" = lib.mkIf osConfig.hardware.opentabletdriver.enable { + force = true; + text = builtins.toJSON { + Profiles = let + mkBinding = k: { + Path = "OpenTabletDriver.Desktop.Binding.${ + if lib.hasInfix "+" k + then "MultiKeyBinding" + else "KeyBinding" + }"; + Settings = [ + { + Property = + if lib.hasInfix "+" k + then "Keys" + else "Key"; + Value = k; + } + ]; + Enable = true; + }; + in [ + { + Tablet = "Huion HS610"; + OutputMode.Path = "OpenTabletDriver.Desktop.Output.LinuxArtistMode"; + OutputMode.Settings = []; + OutputMode.Enable = true; + Filters = []; + AbsoluteModeSettings.Display = { + Width = 1720.0; + Height = 1080.0; + X = 1280.0; + Y = 540.0; + Rotation = 0.0; + }; + AbsoluteModeSettings.Tablet = { + Width = 254.0; + Height = 158.75; + X = 127.0; + Y = 79.375; + Rotation = 0; + }; + AbsoluteModeSettings.EnableClipping = true; + AbsoluteModeSettings. EnableAreaLimiting = false; + AbsoluteModeSettings. LockAspectRatio = false; + RelativeModeSettings = { + XSensitivity = 10.0; + YSensitivity = 10.0; + RelativeRotation = 0.0; + RelativeResetDelay = "00:00:00.1000000"; + }; + Bindings.TipActivationThreshold = 1.0; + Bindings.TipButton = { + Path = "OpenTabletDriver.Desktop.Binding.MouseBinding"; + Settings = [ + { + Property = "Button"; + Value = "Left"; + } + ]; + }; + Bindings.EraserActivationThreshold = 1.0; + Bindings.EraserButton = null; + Bindings.PenButtons = [ + (mkBinding "Space") + (mkBinding "Control+K") + ]; + Bindings.AuxButtons = [ + null + null + null + null + (mkBinding "D5") + null + (mkBinding "LeftControl") + (mkBinding "LeftShift") + (mkBinding "Control+Z") + (mkBinding "Control+Shift+Z") + (mkBinding "B") + (mkBinding "E") + ]; + Bindings.MouseButtons = []; + Bindings.MouseScrollUp = null; + Bindings.MouseScrollDown = null; + } + ]; + LockUsableAreaDisplay = true; + LockUsableAreaTablet = true; + Tools = []; + }; }; # This value determines the Home Manager release that your diff --git a/home/terminal/impermanence.nix b/home/terminal/impermanence.nix index be1590c..d8e70e5 100644 --- a/home/terminal/impermanence.nix +++ b/home/terminal/impermanence.nix @@ -33,7 +33,6 @@ with lib; { ["0700" ".cache/wezterm"] ["0755" ".cache/zellij"] ["0700" ".cache/zen"] - ["0755" ".config/sops/age"] ["0755" ".config/Audacity"] ["0755" ".config/audacity4"] ["0755" ".config/blender"] @@ -47,6 +46,7 @@ with lib; { ["0755" ".local/share/audacity4"] ["0755" ".local/share/direnv"] ["0700" ".local/share/keyrings"] + ["0700" ".local/share/Steam"] ]; }; } diff --git a/hosts/battleship-mk2/configuration.nix b/hosts/battleship-mk2/configuration.nix index ccc6c9f..5abd34b 100644 --- a/hosts/battleship-mk2/configuration.nix +++ b/hosts/battleship-mk2/configuration.nix @@ -77,6 +77,7 @@ nix.settings.experimental-features = ["nix-command" "flakes"]; nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ + "obsidian" "steam" "steam-unwrapped" "via"