diff --git a/hosts/desktop/shared-configuration.nix b/hosts/desktop/shared-configuration.nix index 8bcc4aa..5f6c155 100644 --- a/hosts/desktop/shared-configuration.nix +++ b/hosts/desktop/shared-configuration.nix @@ -130,3 +130,5 @@ }; } + + diff --git a/hosts/desktop/shared-home.nix b/hosts/desktop/shared-home.nix index df50d43..3529d15 100644 --- a/hosts/desktop/shared-home.nix +++ b/hosts/desktop/shared-home.nix @@ -5,6 +5,9 @@ ../../modules/home-manager/theme.nix ../../modules/home-manager/programs/librewolf ../../modules/home-manager/programs/krita + ../../modules/home-manager/programs/davinci.nix + ../../modules/home-manager/programs/obs.nix + ../../modules/home-manager/programs/obsidian.nix ../../modules/home-manager/packages/nixx.nix ../../modules/home-manager/packages/nixi.nix ./terminal.nix @@ -33,6 +36,9 @@ }; krita.enable = true; + davinci.enable = true; + obs.enable = true; + obsidian.enable = true; librewolf = { enable = true; @@ -60,7 +66,6 @@ services.flatpak.packages = [ "nz.mega.MEGAsync" - "md.obsidian.Obsidian" "com.bitwarden.desktop" "org.prismlauncher.PrismLauncher" "org.mozilla.Thunderbird" diff --git a/hosts/desktop/wm.nix b/hosts/desktop/wm.nix index 9566093..bfe4791 100644 --- a/hosts/desktop/wm.nix +++ b/hosts/desktop/wm.nix @@ -113,6 +113,24 @@ in default = true; } ]; + + xdg.desktopEntries = { + librewolf = { + name = "Librewolf"; + genericName = "Web Browser"; + exec = "${pkgs.librewolf}/bin/librewolf %U"; + terminal = false; + categories = [ "Application" "Network" "WebBrowser" ]; + mimeType = [ "text/html" "text/xml" ]; + }; + davinci = { + name = "Davinci Resolve"; + genericName = "Video Editor"; + exec = "${pkgs.davinci-resolve}/bin/davinci-resolve %U"; + terminal = false; + categories = [ "Application" "Video" ]; + }; + }; }; } diff --git a/modules/home-manager/programs/davinci.nix b/modules/home-manager/programs/davinci.nix new file mode 100644 index 0000000..f74b28e --- /dev/null +++ b/modules/home-manager/programs/davinci.nix @@ -0,0 +1,16 @@ +{ config, lib, pkgs, ... }: + +let + cfg = config.davinci; +in +{ + imports = [ ]; + options.davinci = with lib; with lib.types; { + enable = mkEnableOption ""; + }; + config = lib.mkIf cfg.enable { + home.packages = with pkgs; [ + davinci-resolve + ]; + }; +} diff --git a/modules/home-manager/programs/obs.nix b/modules/home-manager/programs/obs.nix new file mode 100644 index 0000000..86ae2ca --- /dev/null +++ b/modules/home-manager/programs/obs.nix @@ -0,0 +1,20 @@ +{ config, lib, pkgs, ... }: + +let + cfg = config.obs; +in +{ + imports = [ ]; + options.obs = with lib; with lib.types; { + enable = mkEnableOption ""; + }; + config = lib.mkIf cfg.enable { + home.packages = with pkgs; [ + obs-studio + obs-cli + obs-studio-plugins.wlrobs + obs-studio-plugins.obs-pipewire-audio-capture + obs-studio-plugins.obs-vkcapture + ]; + }; +} diff --git a/modules/home-manager/programs/obsidian.nix b/modules/home-manager/programs/obsidian.nix new file mode 100644 index 0000000..f3de9fb --- /dev/null +++ b/modules/home-manager/programs/obsidian.nix @@ -0,0 +1,16 @@ +{ config, lib, pkgs, ... }: + +let + cfg = config.obsidian; +in +{ + imports = [ ]; + options.obsidian = with lib; with lib.types; { + enable = mkEnableOption ""; + }; + config = lib.mkIf cfg.enable { + services.flatpak.packages = [ + "md.obsidian.Obsidian" + ]; + }; +}