diff options
Diffstat (limited to 'modules/desktop/apps')
-rw-r--r-- | modules/desktop/apps/browsers/firefox.nix | 6 | ||||
-rw-r--r-- | modules/desktop/apps/editors/neovim.nix | 48 | ||||
-rw-r--r-- | modules/desktop/apps/editors/vscode.nix | 6 | ||||
-rw-r--r-- | modules/desktop/apps/games/freeciv.nix | 24 | ||||
-rw-r--r-- | modules/desktop/apps/games/openttd.nix | 28 | ||||
-rw-r--r-- | modules/desktop/apps/games/prism.nix | 2 | ||||
-rw-r--r-- | modules/desktop/apps/games/unciv.nix | 24 | ||||
-rw-r--r-- | modules/desktop/apps/games/vintagestory.nix | 26 | ||||
-rw-r--r-- | modules/desktop/apps/mpd.nix | 8 | ||||
-rw-r--r-- | modules/desktop/apps/mutt-wizard.nix | 46 | ||||
-rw-r--r-- | modules/desktop/apps/virt.nix | 4 | ||||
-rw-r--r-- | modules/desktop/apps/vpn.nix | 23 |
12 files changed, 205 insertions, 40 deletions
diff --git a/modules/desktop/apps/browsers/firefox.nix b/modules/desktop/apps/browsers/firefox.nix index 3c647f1..2c87bd5 100644 --- a/modules/desktop/apps/browsers/firefox.nix +++ b/modules/desktop/apps/browsers/firefox.nix @@ -34,7 +34,7 @@ in } + "/user.js"); search = { force = true; - default = "DuckDuckGo"; + default = "ddg"; engines = { "Nix Packages" = { urls = [{ @@ -47,8 +47,8 @@ in definedAliases = [ "@np" ]; }; "NixOS Wiki" = { - urls = [{ template = "https://nixos.wiki/index.php?search={searchTerms}"; }]; - iconUpdateURL = "https://nixos.wiki/favicon.png"; + urls = [{ template = "https://wiki.nixos.org/index.php?search={searchTerms}"; }]; + icon = "https://wiki.nixos.org/favicon.png"; updateInterval = 24 * 60 * 60 * 1000; definedAliases = [ "@nw" ]; }; diff --git a/modules/desktop/apps/editors/neovim.nix b/modules/desktop/apps/editors/neovim.nix index ee6424b..f0040e0 100644 --- a/modules/desktop/apps/editors/neovim.nix +++ b/modules/desktop/apps/editors/neovim.nix @@ -1,12 +1,10 @@ { config, - options, lib, pkgs, ... }: let nvimConf = config.modules.desktop.apps.editors.neovim; - configDir = config.nixosConfig.configDir; in { options.modules.desktop.apps.editors.neovim = { enable = lib.mkOption { @@ -24,11 +22,9 @@ in { }; home.packages = [ - pkgs.rnix-lsp - pkgs.ccls - pkgs.nodePackages.bash-language-server + pkgs.clang-tools + pkgs.nil pkgs.texlab - pkgs.sumneko-lua-language-server ]; home.manager.programs.neovim = { @@ -41,31 +37,37 @@ in { luafile /etc/nixos/config/nvim/lua/settings.lua luafile /etc/nixos/config/nvim/lua/lsp.lua ''; + coc.enable = true; + coc.settings = { + "suggest.noselect" = true; + "suggest.enablePreview" = true; + "suggest.enablePreselect" = false; + "suggest.disableKind" = true; + "inlayHint.enable" = false; + + "nix.enableLanguageServer" = true; + "nix.serverPath" = "nil"; + }; plugins = with pkgs.vimPlugins; [ nvim-web-devicons gitsigns-nvim - nvim-tree-lua catppuccin-nvim + vim-commentary + vim-fugitive + + popup-nvim + plenary-nvim + telescope-nvim + nvim-lspconfig - nvim-cmp - cmp-cmdline - cmp-nvim-lsp - cmp-buffer - cmp-path - cmp-vsnip - cmp-treesitter - - vim-nix - vim-vsnip - nvim-treesitter.withAllGrammars - neoformat + nvim-treesitter nvim-treesitter.withAllGrammars - bufferline-nvim - lualine-nvim - alpha-nvim - ]; + coc-clangd + coc-lua + coc-spell-checker + ]; }; }; } diff --git a/modules/desktop/apps/editors/vscode.nix b/modules/desktop/apps/editors/vscode.nix index f2db004..a775be8 100644 --- a/modules/desktop/apps/editors/vscode.nix +++ b/modules/desktop/apps/editors/vscode.nix @@ -18,10 +18,8 @@ in { config = lib.mkIf (codeConf.enable) { home.manager.programs.vscode = { enable = true; - package = pkgs.vscode; - extensions = with pkgs.vscode-extensions; [ - catppuccin.catppuccin-vsc - catppuccin.catppuccin-vsc-icons + profiles.default.extensions = with pkgs.vscode-extensions; [ + catppuccin.catppuccin-vsc catppuccin.catppuccin-vsc-icons ms-dotnettools.csharp ]; }; diff --git a/modules/desktop/apps/games/freeciv.nix b/modules/desktop/apps/games/freeciv.nix new file mode 100644 index 0000000..cb5e462 --- /dev/null +++ b/modules/desktop/apps/games/freeciv.nix @@ -0,0 +1,24 @@ +{ + config, + options, + lib, + pkgs, + rootPath, + ... +}: let + freecivConf = config.modules.desktop.apps.games.freeciv; + configDir = config.nixosConfig.configDir; +in { + options.modules.desktop.apps.games.freeciv = { + enable = lib.mkOption { + type = lib.types.bool; + default = false; + }; + }; + + config = lib.mkIf (freecivConf.enable) { + home.packages = with pkgs; [ + (callPackage (rootPath + /packages/freeciv/default.nix) {}) + ]; + }; +} diff --git a/modules/desktop/apps/games/openttd.nix b/modules/desktop/apps/games/openttd.nix new file mode 100644 index 0000000..f66ccc0 --- /dev/null +++ b/modules/desktop/apps/games/openttd.nix @@ -0,0 +1,28 @@ +{ + config, + options, + lib, + pkgs, + rootPath, + ... +}: let + openttdConf = config.modules.desktop.apps.games.openttd; + configDir = config.nixosConfig.configDir; +in { + options.modules.desktop.apps.games.openttd = { + enable = lib.mkOption { + type = lib.types.bool; + default = false; + }; + }; + + config = lib.mkIf (openttdConf.enable) { + home.packages = with pkgs; [ + openttd + ]; + + fonts.packages = with pkgs; [ + openttd-ttf + ]; + }; +} diff --git a/modules/desktop/apps/games/prism.nix b/modules/desktop/apps/games/prism.nix index 4eb0a5f..d3ceee7 100644 --- a/modules/desktop/apps/games/prism.nix +++ b/modules/desktop/apps/games/prism.nix @@ -5,7 +5,7 @@ pkgs, ... }: let - prismConf = config.modules.desktop.apps.games; + prismConf = config.modules.desktop.apps.games.prism; configDir = config.nixosConfig.configDir; in { options.modules.desktop.apps.games.prism = { diff --git a/modules/desktop/apps/games/unciv.nix b/modules/desktop/apps/games/unciv.nix new file mode 100644 index 0000000..1eec540 --- /dev/null +++ b/modules/desktop/apps/games/unciv.nix @@ -0,0 +1,24 @@ +{ + config, + options, + lib, + pkgs, + rootPath, + ... +}: let + uncivConf = config.modules.desktop.apps.games.unciv; + configDir = config.nixosConfig.configDir; +in { + options.modules.desktop.apps.games.unciv = { + enable = lib.mkOption { + type = lib.types.bool; + default = false; + }; + }; + + config = lib.mkIf (uncivConf.enable) { + home.packages = with pkgs; [ + (callPackage (rootPath + /packages/unciv/default.nix) {}) + ]; + }; +} diff --git a/modules/desktop/apps/games/vintagestory.nix b/modules/desktop/apps/games/vintagestory.nix index db3d49e..a15935a 100644 --- a/modules/desktop/apps/games/vintagestory.nix +++ b/modules/desktop/apps/games/vintagestory.nix @@ -3,17 +3,29 @@ options, lib, pkgs, + rootPath, ... }: let - gamesConf = config.modules.desktop.apps.games; + vsConf = config.modules.desktop.apps.games.vintagestory; configDir = config.nixosConfig.configDir; in { - config = lib.mkIf (gamesConf.enable) { - environment.systemPackages = [ - pkgs.dotnet-sdk_7 - ]; - environment.sessionVariables = { - DOTNET_ROOT = "${pkgs.dotnet-sdk_7}"; + options.modules.desktop.apps.games.vintagestory = { + enable = lib.mkOption { + type = lib.types.bool; + default = false; }; }; + + config = lib.mkIf (vsConf.enable) { + home.manager.xdg.mimeApps = { + defaultApplications = { + "x-scheme-handler/vintagestoryjoin" = [ "Vintagestory_url_connect.desktop" ]; + "x-scheme-handler/vintagestorymodinstall" = [ "Vintagestory_url_mod.desktop" ]; + }; + }; + + home.packages = with pkgs; [ + (callPackage (rootPath + /packages/vintagestory/default.nix) {}) + ]; + }; } diff --git a/modules/desktop/apps/mpd.nix b/modules/desktop/apps/mpd.nix index e7af8c3..17b22ec 100644 --- a/modules/desktop/apps/mpd.nix +++ b/modules/desktop/apps/mpd.nix @@ -18,12 +18,11 @@ in config = lib.mkIf (mpdConfig.enable) { home.packages = [ pkgs.mpc-cli - pkgs.ncmpcpp ]; services.mpd = { enable = true; - musicDirectory = /home/jon/mus; + musicDirectory = "/home/jon/mus"; extraConfig = '' audio_output { type "pipewire" @@ -34,6 +33,11 @@ audio_output { }; systemd.services.mpd.environment = { XDG_RUNTIME_DIR = "/run/user/1000"; + }; + + home.manager.programs.ncmpcpp = { + enable = true; + mpdMusicDir = /home/jon/mus; }; }; } diff --git a/modules/desktop/apps/mutt-wizard.nix b/modules/desktop/apps/mutt-wizard.nix new file mode 100644 index 0000000..da7b779 --- /dev/null +++ b/modules/desktop/apps/mutt-wizard.nix @@ -0,0 +1,46 @@ +{ + config, + options, + lib, + pkgs, + ... +}: let + muttConfig = config.modules.desktop.apps.mutt; +in +{ + options.modules.desktop.apps.mutt = { + enable = lib.mkOption { + type = lib.types.bool; + default = false; + }; + }; + + config = lib.mkIf (muttConfig.enable) { + home.packages = [ + pkgs.neomutt + pkgs.isync + pkgs.lynx + pkgs.mutt-wizard + ]; + + systemd.timers."auto-mailsync" = { + wantedBy = [ "timers.target" ]; + timerConfig = { + OnBootSec = "10m"; + OnUnitActiveSec = "10m"; + Unit = "auto-mailsync.service"; + }; + }; + + systemd.services."auto-mailsync" = { + script = '' + set -eu + /run/current-system/sw/bin/bash -l -c '${pkgs.mutt-wizard}/bin/mailsync -Y' + ''; + serviceConfig = { + Type = "oneshot"; + User = "jon"; + }; + }; + }; +} diff --git a/modules/desktop/apps/virt.nix b/modules/desktop/apps/virt.nix index 5851a0b..a9eaef4 100644 --- a/modules/desktop/apps/virt.nix +++ b/modules/desktop/apps/virt.nix @@ -16,6 +16,10 @@ in }; config = lib.mkIf (virtConfig.enable) { + home.packages = [ + pkgs.virtiofsd + ]; + virtualisation.libvirtd = { enable = true; qemu = { diff --git a/modules/desktop/apps/vpn.nix b/modules/desktop/apps/vpn.nix new file mode 100644 index 0000000..8cddb39 --- /dev/null +++ b/modules/desktop/apps/vpn.nix @@ -0,0 +1,23 @@ +{ + config, + options, + lib, + pkgs, + ... +}: let + vpnConfig = config.modules.desktop.apps.vpn; +in +{ + options.modules.desktop.apps.vpn = { + enable = lib.mkOption { + type = lib.types.bool; + default = false; + }; + }; + + config = lib.mkIf (vpnConfig.enable) { + home.packages = [ + pkgs.mullvad-vpn + ]; + }; +} |