Compare commits

...
7 Commits
33 changed files with 408 additions and 328 deletions
+1
View File
@@ -1 +1,2 @@
export IMPURE_ROOT=$(pwd)
dotenv
Generated
+37 -37
View File
@@ -7,11 +7,11 @@
]
},
"locked": {
"lastModified": 1784981413,
"narHash": "sha256-F0Fx2C0bOmmvTovxySV612ltrtPc5FMzZ1IaK3VKy1o=",
"lastModified": 1785554507,
"narHash": "sha256-NI7EXya7us6ZH9ME6iqhDvMPbl6IewE1kfL4UuIP27c=",
"owner": "linyinfeng",
"repo": "angrr",
"rev": "b2a7ef31dfd2a03649b9483f2eabf6f48b4d6bd1",
"rev": "45e0f06f3691a494d495b81e6739508657e56b5f",
"type": "github"
},
"original": {
@@ -149,11 +149,11 @@
"rust-analyzer-src": "rust-analyzer-src"
},
"locked": {
"lastModified": 1785400495,
"narHash": "sha256-1lYcRFp9AzhPjj0kY/5sru9vKFU4VV9v70iPQOayqIc=",
"lastModified": 1785572837,
"narHash": "sha256-7HLoqxURizfu1Gs5Xg0OTwi9s9Ewh7JpBeE2xVoZHAU=",
"owner": "nix-community",
"repo": "fenix",
"rev": "a130a35700abbfb1e96ce47e4f0bee7e76ddfcc1",
"rev": "e6dc05cac3bc08fc8b00cc1571a456a47d7ca782",
"type": "github"
},
"original": {
@@ -296,11 +296,11 @@
]
},
"locked": {
"lastModified": 1785306346,
"narHash": "sha256-DScBkW0fOgpGPK2trNoX3ryLTlaC14+gglFo/BhGJ4g=",
"lastModified": 1785531816,
"narHash": "sha256-vkMnV0JIyw+g/NmcfoajlGaAO+9a0ezia+FZohQJrik=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "e705714e918c3b11affcdd15db2cbe3a070420a0",
"rev": "bf9ce9fec78f95f374e8dd3b503863a3ec128ebe",
"type": "github"
},
"original": {
@@ -364,11 +364,11 @@
]
},
"locked": {
"lastModified": 1785393846,
"narHash": "sha256-ZrkupCDmDaM2lZZoOZ4bR5ioHBxyBdIUTSeXbx+383c=",
"lastModified": 1785566656,
"narHash": "sha256-mwIyMLuxUzYDYLk09QL0uKtkNvjQJ0LKOWErMeqNSz4=",
"owner": "numtide",
"repo": "llm-agents.nix",
"rev": "ce99071da939d9d7997e27d35cf4d6c5e44bc32a",
"rev": "e222bd1e402f711646012624665af754d00bfa62",
"type": "github"
},
"original": {
@@ -401,11 +401,11 @@
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
},
"locked": {
"lastModified": 1785412064,
"narHash": "sha256-TZqP0zkK8TTB3iYf6hdNAzTlus9W8lXcSx/FJKpRBLU=",
"lastModified": 1785543227,
"narHash": "sha256-jpFUp0N+wu/D9OCQHRr09rSR+1LKzwwn4wYSMF+/t94=",
"ref": "refs/heads/main",
"rev": "7a786833315f12a349d521e2ae7cbd3101881d66",
"revCount": 152,
"rev": "d73801e0812d2c6e3afca3cf20e5a7f24b10972a",
"revCount": 156,
"type": "git",
"url": "https://codeberg.org/bananad3v/niri-nix"
},
@@ -455,11 +455,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1785301185,
"narHash": "sha256-eoS3KQTO0aPWXZvIaRbRAzSSHW3l5wdMFXtT1ISfoKA=",
"lastModified": 1785452004,
"narHash": "sha256-k94ksv7XmaLeK5sE1ST/TTdu2aDEO9sfbcgEaNJPTXA=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "9bc02893134c733dd85de46ee4fb2fac696b5529",
"rev": "a5e9f2fd9ef6011c6886d6935f3ef678c81385fa",
"type": "github"
},
"original": {
@@ -471,11 +471,11 @@
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1785412196,
"narHash": "sha256-Hip0tIwtaNhM+tjXxz6RVXSdVWZNphcwwPbRKHwn0Uc=",
"lastModified": 1785588149,
"narHash": "sha256-xE1ZzD5ijIYjRYut8Uj37pPEGdiKHveRvGxuIpuPQgY=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "5fefdd21269c6abe539fe43e76acd4000111b7c7",
"rev": "c3843c8e403518b550ab3d69fb5a7ab0b391746d",
"type": "github"
},
"original": {
@@ -487,11 +487,11 @@
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1785318670,
"narHash": "sha256-dN6Ou5x/+23FZLEpYP3IffO+NyJFzUlGumt1uu3MMaY=",
"lastModified": 1785454630,
"narHash": "sha256-LQy14TZp77TwbQf40gg1V3jo8FwJG0jGDkAH+zRHqg8=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "0954f7ee2f6bb3dc7d4e3d0d8bcb8fd4bde4cfc5",
"rev": "1559d3daa3ecc813a650b79375ea61b6741b8746",
"type": "github"
},
"original": {
@@ -503,11 +503,11 @@
},
"nixpkgs-unstable-small": {
"locked": {
"lastModified": 1785382966,
"narHash": "sha256-TzNPxZZV/qnV8U5fEtrvcMF/GppHnlWm16RDHddPOyE=",
"lastModified": 1785571017,
"narHash": "sha256-5WAAreQURim0gSrDulj6Vex5j7V1SnTkur8ZtBuUKNc=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "ba889d5db7c07eaf5cb8f37835d447d935c51b21",
"rev": "6c64a6dbd73ad31493e95a8cb00f90aef909fa24",
"type": "github"
},
"original": {
@@ -624,11 +624,11 @@
"rust-analyzer-src": {
"flake": false,
"locked": {
"lastModified": 1785369962,
"narHash": "sha256-Mi11wW0wbfBtnq+0jLHzgSlvFvzAOSu+nTRsXEvmNZ8=",
"lastModified": 1785509417,
"narHash": "sha256-KO1aylbnpZTW1l/8c1MoUPIbwPh5eSM0+VOsksXiXU4=",
"owner": "rust-lang",
"repo": "rust-analyzer",
"rev": "b2abc7e727d7139f94352c58f8f937ea875abb68",
"rev": "e4e67338eaf4724e4e6e1525711e00b85d174cf9",
"type": "github"
},
"original": {
@@ -682,11 +682,11 @@
"tinted-zed": "tinted-zed"
},
"locked": {
"lastModified": 1784676123,
"narHash": "sha256-ndyanKzw90yX2nUVFmTuYqXidUNymtMfgmIHyNdhht0=",
"lastModified": 1785518890,
"narHash": "sha256-BeXpCHTPZ+ZlRR12nYe/0JHjfp/fgJVY2YV2xAz8JHs=",
"owner": "danth",
"repo": "stylix",
"rev": "66714e5ce44269ecc58c20d9196da8dbe1b27a31",
"rev": "6316d1d03e7a12cae7cdb007f34d2eaebbfc802a",
"type": "github"
},
"original": {
@@ -840,11 +840,11 @@
]
},
"locked": {
"lastModified": 1785224333,
"narHash": "sha256-8DNJUVM10ktK02V9ZIV064CH+fuPF272VCAZBn6arig=",
"lastModified": 1785569296,
"narHash": "sha256-ux2+60xcjl4LloKPevqrkP+uY4DNZXhzVd+TYrfE2+w=",
"owner": "0xc000022070",
"repo": "zen-browser-flake",
"rev": "5f1a4be4d280e1ae06d61a75775a234b1714da3f",
"rev": "945e834a12a97a5e3b08869960e35c7ccfde6f69",
"type": "github"
},
"original": {
+18 -76
View File
@@ -1,28 +1,28 @@
{
config,
pkgs,
username,
...
}:
{
my.programs = {
ollama.enable = true;
localsend.enable = true;
wpsoffice.enable = true;
papers.enable = true;
nautilus.enable = true;
ayugram.enable = true;
signal.enable = true;
element.enable = true;
fractal.enable = true;
qq.enable = true;
wechat.enable = true;
};
my.hm = {
home.packages = with pkgs; [
localsend
wpsoffice-cn
wps-office-fonts
ttf-wps-fonts
papers
anki
ayugram-desktop
signal-desktop-wayland
element-desktop
fractal
qq-wayland
wechat
gnome-clocks
];
programs.zsh = {
@@ -52,52 +52,9 @@
coding.all.enable = true;
desktop.all.enable = true;
virt.moonlight.enable = true;
i18n.fcitx5.enable = true;
xdg.enable = true;
xdg = {
enable = true;
defaultApplications =
let
browser = [ config.my.desktop.browser.default.desktop ];
editor = [ "nvim.desktop" ];
imageviewer = [ "org.gnome.Loupe.desktop" ];
in
{
"inode/directory" = [ "org.gnome.Nautilus.desktop" ];
"application/pdf" = [ "org.gnome.Papers.desktop" ];
"text/*" = editor;
"application/json" = editor;
"text/xml" = editor;
"application/xml" = editor;
"application/xhtml+xml" = editor;
"application/xhtml_xml" = editor;
"application/rdf+xml" = editor;
"application/rss+xml" = editor;
"application/x-extension-htm" = editor;
"application/x-extension-html" = editor;
"application/x-extension-shtml" = editor;
"application/x-extension-xht" = editor;
"application/x-extension-xhtml" = editor;
"text/html" = browser;
"x-scheme-handler/about" = browser;
"x-scheme-handler/ftp" = browser;
"x-scheme-handler/http" = browser;
"x-scheme-handler/https" = browser;
"x-scheme-handler/unknown" = browser;
"audio/*" = imageviewer;
"video/*" = imageviewer;
"image/*" = imageviewer;
"image/gif" = imageviewer;
"image/jpeg" = imageviewer;
"image/png" = imageviewer;
"image/webp" = imageviewer;
};
};
persist = {
enable = true;
homeDirs = [
@@ -112,21 +69,6 @@
".cache"
".local/state"
".local/share/Anki2"
".local/share/shotwell"
".local/share/Kingsoft"
".local/share/AyuGramDesktop"
".local/share/fractal"
".config/Signal"
".config/Element"
".config/QQ"
".xwechat"
".config/Kingsoft"
".config/dconf"
".config/pip"
".config/sunshine"
];
};
};
+18 -78
View File
@@ -1,28 +1,28 @@
{
config,
pkgs,
username,
...
}:
{
my.programs = {
ollama.enable = true;
localsend.enable = true;
wpsoffice.enable = true;
papers.enable = true;
nautilus.enable = true;
ayugram.enable = true;
signal.enable = true;
element.enable = true;
fractal.enable = true;
qq.enable = true;
wechat.enable = true;
};
my.hm = {
home.packages = with pkgs; [
localsend
wpsoffice-cn
wps-office-fonts
ttf-wps-fonts
papers
anki
ayugram-desktop
signal-desktop-wayland
element-desktop
fractal
qq-wayland
wechat
gnome-clocks
];
programs.zsh = {
@@ -74,56 +74,9 @@
cli.all.enable = true;
coding.all.enable = true;
desktop.all.enable = true;
i18n.fcitx5.enable = true;
xdg.enable = true;
programs = {
ollama.enable = true;
};
xdg = {
enable = true;
defaultApplications =
let
browser = [ config.my.desktop.browser.default.desktop ];
editor = [ "nvim.desktop" ];
imageviewer = [ "org.gnome.Loupe.desktop" ];
in
{
"inode/directory" = [ "org.gnome.Nautilus.desktop" ];
"application/pdf" = [ "org.gnome.Papers.desktop" ];
"text/*" = editor;
"application/json" = editor;
"text/xml" = editor;
"application/xml" = editor;
"application/xhtml+xml" = editor;
"application/xhtml_xml" = editor;
"application/rdf+xml" = editor;
"application/rss+xml" = editor;
"application/x-extension-htm" = editor;
"application/x-extension-html" = editor;
"application/x-extension-shtml" = editor;
"application/x-extension-xht" = editor;
"application/x-extension-xhtml" = editor;
"text/html" = browser;
"x-scheme-handler/about" = browser;
"x-scheme-handler/ftp" = browser;
"x-scheme-handler/http" = browser;
"x-scheme-handler/https" = browser;
"x-scheme-handler/unknown" = browser;
"audio/*" = imageviewer;
"video/*" = imageviewer;
"image/*" = imageviewer;
"image/gif" = imageviewer;
"image/jpeg" = imageviewer;
"image/png" = imageviewer;
"image/webp" = imageviewer;
};
};
persist = {
enable = true;
homeDirs = [
@@ -136,20 +89,7 @@
".cache"
".local/state"
".local/share/Anki2"
".local/share/shotwell"
".local/share/Kingsoft"
".local/share/AyuGramDesktop"
".local/share/fractal"
".config/Signal"
".config/Element"
".config/QQ"
".xwechat"
".config/Kingsoft"
".config/dconf"
".config/pip"
".config/sunshine"
];
};
+1
View File
@@ -53,6 +53,7 @@ in
my.persist.homeDirs = [
".local/share/zoxide"
".config/television/cable"
".config/dconf"
];
my.hm = {
programs.fish.shellAliases = {
+6 -3
View File
@@ -17,7 +17,7 @@ in
home.packages = with pkgs.llm-agents; [
codex
claude-code
opencode
# opencode
pi
omp
];
@@ -28,10 +28,13 @@ in
".claude"
".config/opencode"
".local/share/opencode"
# ".config/opencode"
# ".local/share/opencode"
".codex"
".pi"
".omp"
];
homeFiles = [
".claude.json"
+2 -2
View File
@@ -10,8 +10,8 @@ in
config = lib.mkIf cfg.enable {
my.coding.editor = {
neovim.enable = true;
vscode.enable = true;
zed.enable = true;
vscode.enable = false;
zed.enable = false;
};
};
}
+16
View File
@@ -7,6 +7,7 @@
}:
let
cfg = config.my.coding.editor.neovim;
desktop = [ "nvim.desktop" ];
in
{
options.my.coding.editor.neovim = {
@@ -49,5 +50,20 @@ in
my.persist.homeDirs = [
".local/share/nvim"
];
my.xdg.defaultApplications = {
"text/*" = desktop;
"application/json" = desktop;
"text/xml" = desktop;
"application/xml" = desktop;
"application/xhtml+xml" = desktop;
"application/xhtml_xml" = desktop;
"application/rdf+xml" = desktop;
"application/rss+xml" = desktop;
"application/x-extension-htm" = desktop;
"application/x-extension-html" = desktop;
"application/x-extension-shtml" = desktop;
"application/x-extension-xht" = desktop;
"application/x-extension-xhtml" = desktop;
};
};
}
@@ -8,6 +8,7 @@
"gitsigns.nvim": { "branch": "main", "commit": "25050e4ed39e628282831d4cbecb1850454ce915" },
"glance.nvim": { "branch": "master", "commit": "bf86d8b79dce808e65fdb6e9269d0b4ed6d2eefc" },
"guess-indent.nvim": { "branch": "main", "commit": "84a4987ff36798c2fc1169cbaff67960aed9776f" },
"hunk.nvim": { "branch": "master", "commit": "c8a8e7b6973576f63e5bf39aa8338d7f37f4dc53" },
"indent-blankline.nvim": { "branch": "master", "commit": "d28a3f70721c79e3c5f6693057ae929f3d9c0a03" },
"inlay-hints.nvim": { "branch": "master", "commit": "297a65ab9543eb0850c1a55df4bb89e22cfec504" },
"lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" },
@@ -27,6 +28,7 @@
"nvim-treesitter": { "branch": "main", "commit": "4916d6592ede8c07973490d9322f187e07dfefac" },
"nvim-treesitter-textobjects": { "branch": "main", "commit": "851e865342e5a4cb1ae23d31caf6e991e1c99f1e" },
"nvim-web-devicons": { "branch": "master", "commit": "dfbfaa967a6f7ec50789bead7ef87e336c1fa63c" },
"obsidian.nvim": { "branch": "main", "commit": "ae1f76a75c7ce36866e1d9342a8f6f5b9c2caf9b" },
"outline.nvim": { "branch": "main", "commit": "2a132953b944561d45b52e4541ebfff71934a742" },
"pest.vim": { "branch": "master", "commit": "60cae7ea1beb644ed40081a3ec213ea9061aba09" },
"plenary.nvim": { "branch": "master", "commit": "74b06c6c75e4eeb3108ec01852001636d85a932b" },
@@ -21,7 +21,7 @@ local plugins = {
},
{
"nvim-lualine/lualine.nvim",
dependencies = { { "nvim-tree/nvim-web-devicons", lazy = true } },
dependencies = { { "nvim-tree/nvim-web-devicons" } },
config = function()
require("lualine").setup(require("plugins.lualine"))
end,
@@ -178,7 +178,7 @@ local plugins = {
{
"L3MON4D3/LuaSnip",
event = "InsertEnter",
dependencies = { { "rafamadriz/friendly-snippets", lazy = true } },
dependencies = { { "rafamadriz/friendly-snippets" } },
build = "make install_jsregexp",
config = function()
require("luasnip").setup(require("plugins.cmp.luasnip"))
@@ -353,6 +353,24 @@ local plugins = {
},
},
},
{
"julienvincent/hunk.nvim",
cmd = { "DiffEditor" },
dependencies = { { "nvim-tree/nvim-web-devicons" } },
opts = {
keys = {
global = {
quit = { "<leader>q" },
},
diff = {
prev_hunk = { "<S-Tab>" },
next_hunk = { "<Tab>" },
toggle_focus = {},
},
},
},
},
},
}
-1
View File
@@ -20,7 +20,6 @@ in
typescript
typescript-language-server
vue-language-server
biome
];
+2 -2
View File
@@ -9,8 +9,8 @@ in
config = lib.mkIf cfg.enable {
my.desktop.browser = {
firefox.enable = true;
chromium.enable = true;
firefox.enable = false;
chromium.enable = false;
zen.enable = true;
};
};
+16 -1
View File
@@ -1,4 +1,8 @@
{ lib, ... }:
{ lib, config, ... }:
let
cfg = config.my.desktop.browser.default;
desktop = [ cfg.desktop ];
in
{
options.my.desktop.browser.default = {
command = lib.mkOption {
@@ -10,4 +14,15 @@
default = "zen-beta.desktop";
};
};
config = {
my.xdg.defaultApplications = {
"text/html" = desktop;
"x-scheme-handler/about" = desktop;
"x-scheme-handler/ftp" = desktop;
"x-scheme-handler/http" = desktop;
"x-scheme-handler/https" = desktop;
"x-scheme-handler/unknown" = desktop;
};
};
}
+3 -3
View File
@@ -13,10 +13,10 @@ in
mpv.enable = true;
loupe.enable = true;
thunderbird.enable = true;
vlc.enable = true;
vlc.enable = false;
splayer.enable = true;
spotify.enable = true;
spotube.enable = true;
spotify.enable = false;
spotube.enable = false;
};
};
}
+5
View File
@@ -6,6 +6,7 @@
}:
let
cfg = config.my.desktop.media.cine;
desktop = [ "io.github.diegopvlk.Cine.desktop" ];
in
{
options.my.desktop.media.cine = {
@@ -14,5 +15,9 @@ in
config = lib.mkIf cfg.enable {
my.hm.home.packages = [ pkgs.cine ];
my.xdg.defaultApplications = {
"audio/*" = desktop;
"video/*" = desktop;
};
};
}
+8
View File
@@ -6,6 +6,7 @@
}:
let
cfg = config.my.desktop.media.loupe;
desktop = [ "org.gnome.Loupe.desktop" ];
in
{
options.my.desktop.media.loupe = {
@@ -14,5 +15,12 @@ in
config = lib.mkIf cfg.enable {
my.hm.home.packages = [ pkgs.loupe ];
my.xdg.defaultApplications = {
"image/*" = desktop;
"image/gif" = desktop;
"image/jpeg" = desktop;
"image/png" = desktop;
"image/webp" = desktop;
};
};
}
+1 -1
View File
@@ -9,7 +9,7 @@ in
config = lib.mkIf cfg.enable {
my.desktop.screencast = {
obs-studio.enable = true;
obs-studio.enable = false;
};
};
}
+3 -3
View File
@@ -9,10 +9,10 @@ in
config = lib.mkIf cfg.enable {
my.desktop.terminal = {
alacritty.enable = true;
foot.enable = true;
alacritty.enable = false;
foot.enable = false;
kitty.enable = true;
ghostty.enable = true;
ghostty.enable = false;
};
};
}
+13
View File
@@ -0,0 +1,13 @@
{ lib, ... }:
{
options.my.desktop.terminal.default = {
command = lib.mkOption {
type = lib.types.str;
default = "kitty";
};
desktop = lib.mkOption {
type = lib.types.str;
default = "kitty.desktop";
};
};
}
-115
View File
@@ -1,115 +0,0 @@
include "generated.kdl"
input {
focus-follows-mouse max-scroll-amount="0%"
workspace-auto-back-and-forth
}
layout {
gaps 23
center-focused-column "on-overflow"
always-center-single-column
focus-ring {
off
}
border {
on
width 4
inactive-color "#2e2e3eee"
active-gradient from="#6186d6ee" to="#cba6f7ee" angle=180 relative-to="workspace-view"
}
insert-hint {
color "rgba(42, 44, 54, 0.5)"
}
preset-column-widths {
proportion 0.33333
proportion 0.4
proportion 0.5
proportion 0.6
proportion 0.66667
proportion 0.8
}
default-column-width { proportion 0.8; }
background-color "transparent"
tab-indicator {
width 10
place-within-column
}
}
prefer-no-csd
hotkey-overlay {
skip-at-startup
}
clipboard {
disable-primary
}
blur {
passes 3
offset 4
noise 0.02
saturation 1.5
}
layer-rule {
match namespace="^wallpaper$"
place-within-backdrop true
}
overview {
workspace-shadow {
off
}
}
animations {
on
slowdown 1.5
workspace-switch {
spring damping-ratio=1.0 stiffness=1000 epsilon=0.0001
}
}
window-rule {
draw-border-with-background false
geometry-corner-radius 14.000000 14.000000 14.000000 14.000000
clip-to-geometry true
background-effect {
xray true
blur true
}
}
window-rule {
match is-floating=true
background-effect {
xray false
}
}
window-rule {
match app-id="kitty|foot|Alacritty|ghostty"
opacity 0.8
}
window-rule {
match app-id="org.gnome.Nautilus"
opacity 0.6
}
window-rule {
match app-id="org.jackhuang.hmcl.Launcher"
border {
off
}
}
+1
View File
@@ -55,6 +55,7 @@ in
binds = lib.mkMerge [
{
"Mod+G".spawn = [ config.my.desktop.browser.default.command ];
"Mod+Return".spawn = [ config.my.desktop.terminal.default.command ];
}
(builtins.listToAttrs (
map (n: {
-2
View File
@@ -1,6 +1,4 @@
binds {
Mod+Return { spawn "kitty" "-1"; }
Mod+E { spawn "nautilus"; }
Ctrl+Alt+Escape { spawn "missioncenter"; }
Mod+R { spawn "noctalia-shell" "ipc" "call" "launcher" "toggle"; }
+1 -2
View File
@@ -33,6 +33,7 @@ in
};
security.pam.services.login.enableGnomeKeyring = true;
services.gnome.gnome-keyring.enable = true;
my.persist.homeDirs = [
{
directory = ".local/share/keyrings";
@@ -75,12 +76,10 @@ in
home.packages = with pkgs; [
xwayland-satellite-unstable
wlr-randr
wl-clipboard
cliphist
brightnessctl
nautilus
mission-center
noctalia-shell
+23
View File
@@ -0,0 +1,23 @@
{
config,
lib,
pkgs,
...
}:
let
cfg = config.my.programs.ayugram;
in
{
options.my.programs.ayugram = {
enable = lib.mkEnableOption "ayugram";
};
config = lib.mkIf cfg.enable {
my.hm.home.packages = [
pkgs.ayugram-desktop
];
my.persist.homeDirs = [
".local/share/AyuGramDesktop"
];
};
}
+23
View File
@@ -0,0 +1,23 @@
{
config,
lib,
pkgs,
...
}:
let
cfg = config.my.programs.element;
in
{
options.my.programs.element = {
enable = lib.mkEnableOption "element";
};
config = lib.mkIf cfg.enable {
my.hm.home.packages = [
pkgs.element-desktop
];
my.persist.homeDirs = [
".config/Element"
];
};
}
+23
View File
@@ -0,0 +1,23 @@
{
config,
lib,
pkgs,
...
}:
let
cfg = config.my.programs.fractal;
in
{
options.my.programs.fractal = {
enable = lib.mkEnableOption "fractal";
};
config = lib.mkIf cfg.enable {
my.hm.home.packages = [
pkgs.fractal
];
my.persist.homeDirs = [
".local/share/fractal"
];
};
}
+23
View File
@@ -0,0 +1,23 @@
{
config,
lib,
pkgs,
...
}:
let
cfg = config.my.programs.localsend;
in
{
options.my.programs.localsend = {
enable = lib.mkEnableOption "localsend";
};
config = lib.mkIf cfg.enable {
my.hm.home.packages = [
pkgs.localsend
];
my.persist.homeDirs = [
".local/share/org.localsend.localsend_app"
];
};
}
+26
View File
@@ -0,0 +1,26 @@
{
config,
lib,
pkgs,
...
}:
let
cfg = config.my.programs.nautilus;
in
{
options.my.programs.nautilus = {
enable = lib.mkEnableOption "nautilus";
};
config = lib.mkIf cfg.enable {
my.hm.home.packages = [
pkgs.nautilus
];
my.xdg.defaultApplications = {
"inode/directory" = [ "org.gnome.Nautilus.desktop" ];
};
my.hm.wayland.windowManager.niri.settings.binds."Mod+E".spawn = [
"nautilus"
];
};
}
+21
View File
@@ -0,0 +1,21 @@
{
config,
lib,
pkgs,
...
}:
let
cfg = config.my.programs.papers;
in
{
options.my.programs.papers = {
enable = lib.mkEnableOption "papers";
};
config = lib.mkIf cfg.enable {
my.hm.home.packages = [
pkgs.papers
];
my.xdg.defaultApplications."application/pdf" = [ "org.gnome.Papers.desktop" ];
};
}
+23
View File
@@ -0,0 +1,23 @@
{
config,
lib,
pkgs,
...
}:
let
cfg = config.my.programs.qq;
in
{
options.my.programs.qq = {
enable = lib.mkEnableOption "qq";
};
config = lib.mkIf cfg.enable {
my.hm.home.packages = [
pkgs.qq-wayland
];
my.persist.homeDirs = [
".config/QQ"
];
};
}
+23
View File
@@ -0,0 +1,23 @@
{
config,
lib,
pkgs,
...
}:
let
cfg = config.my.programs.signal;
in
{
options.my.programs.signal = {
enable = lib.mkEnableOption "signal";
};
config = lib.mkIf cfg.enable {
my.hm.home.packages = [
pkgs.signal-desktop-wayland
];
my.persist.homeDirs = [
".config/Signal"
];
};
}
+23
View File
@@ -0,0 +1,23 @@
{
config,
lib,
pkgs,
...
}:
let
cfg = config.my.programs.wechat;
in
{
options.my.programs.wechat = {
enable = lib.mkEnableOption "wechat";
};
config = lib.mkIf cfg.enable {
my.hm.home.packages = [
pkgs.wechat
];
my.persist.homeDirs = [
".xwechat"
];
};
}
+26
View File
@@ -0,0 +1,26 @@
{
config,
lib,
pkgs,
...
}:
let
cfg = config.my.programs.wpsoffice;
in
{
options.my.programs.wpsoffice = {
enable = lib.mkEnableOption "wpsoffice";
};
config = lib.mkIf cfg.enable {
my.hm.home.packages = with pkgs; [
wpsoffice-cn
wps-office-fonts
ttf-wps-fonts
];
my.persist.homeDirs = [
".config/Kingsoft"
".local/share/Kingsoft"
];
};
}