Compare commits

...

12 Commits

20 changed files with 100 additions and 54 deletions

View File

@@ -22,10 +22,17 @@
nixosDirs = [ nixosDirs = [
"/root" "/root"
"/var" "/var"
"/etc/ssh"
]; ];
nixosFiles = [ nixosFiles = [
"/etc/machine-id" "/etc/machine-id"
]; ];
homeDirs = [
{
directory = ".ssh";
mode = "0700";
}
];
}; };
}; };
} }

View File

@@ -12,20 +12,11 @@
"workspace" "workspace"
"Virt" "Virt"
{
directory = ".ssh";
mode = "0700";
}
".local/state" ".local/state"
".local/share"
".local/share/nvim"
".cache" ".cache"
".ollama" ".ollama"
]; ];
nixosDirs = [
"/etc/ssh"
];
}; };
}; };
} }

View File

@@ -22,19 +22,9 @@
ayugram-desktop ayugram-desktop
telegram-desktop telegram-desktop
signal-desktop signal-desktop
cinny-desktop
discord discord
(master.qq.overrideAttrs ( qq
final: prev: { wechat
preInstall =
prev.preInstall or ""
+ ''
gappsWrapperArgs+=(
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--wayland-text-input-version=3}}"
)
'';
}
))
gnome-clocks gnome-clocks
@@ -164,52 +154,32 @@
".android" ".android"
"Android" "Android"
".ssh"
"bin" "bin"
"workspace" "workspace"
"WineApps"
"Virt" "Virt"
".cache" ".cache"
".local/state" ".local/state"
".local/share/Anki2" ".local/share/Anki2"
".local/share/dooit"
".local/share/nvim"
".local/share/shotwell" ".local/share/shotwell"
".local/share/Steam"
".local/share/SteamOS"
".local/share/Trash"
".local/share/cheat.sh" ".local/share/cheat.sh"
".local/share/Kingsoft" ".local/share/Kingsoft"
".local/share/oss.krtirtho.spotube"
".local/share/AyuGramDesktop" ".local/share/AyuGramDesktop"
".local/share/TelegramDesktop" ".local/share/TelegramDesktop"
".local/share/cinny"
".config/Signal" ".config/Signal"
".config/discord" ".config/discord"
".config/QQ" ".config/QQ"
".xwechat"
".config/Kingsoft" ".config/Kingsoft"
".config/dconf" ".config/dconf"
".config/gh" ".config/gh"
".config/pulse" ".config/pulse"
".config/go-musicfox/db"
".config/pip" ".config/pip"
".config/obs-studio"
".config/libreoffice" ".config/libreoffice"
".config/Moonlight Game Streaming Project"
".config/sunshine" ".config/sunshine"
]; ];
nixosDirs = [
"/etc/ssh"
];
homeFiles = [
".config/mpd/mpd.db" # requires bindfs
".config/go-musicfox/cookie"
".hmcl.json"
];
}; };
}; };
} }

View File

@@ -23,6 +23,13 @@ lib.my.makeSwitch {
}; };
cli.media.mpd.enable = true; cli.media.mpd.enable = true;
persist.homeDirs = [
".config/go-musicfox/db"
];
persist.homeFiles = [
".config/go-musicfox/cookie"
];
}; };
}; };
} }

View File

@@ -21,5 +21,8 @@ lib.my.makeSwitch {
services.mpris-proxy.enable = true; services.mpris-proxy.enable = true;
xdg.configFile."mpd/mpd.conf".source = ./mpd.conf; xdg.configFile."mpd/mpd.conf".source = ./mpd.conf;
}; };
my.persist.homeFiles = [
".config/mpd/mpd.db"
];
}; };
} }

View File

@@ -58,11 +58,7 @@ lib.my.makeSwitch {
aria2 aria2
socat socat
trash-cli
cht-sh cht-sh
dooit
]; ];
programs.tmux = { programs.tmux = {
enable = true; enable = true;

View File

@@ -54,5 +54,8 @@ lib.my.makeHomeProgramConfig {
]; ];
}; };
}; };
my.persist.homeDirs = [
".local/share/nvim"
];
}; };
} }

View File

@@ -179,6 +179,23 @@ local plugins = {
require("telescope").setup(require("plugins.telescope")) require("telescope").setup(require("plugins.telescope"))
end, end,
}, },
{
"ggandor/leap.nvim",
dependencies = { "tpope/vim-repeat" },
config = function()
require("leap").set_default_mappings()
-- Exclude whitespace and the middle of alphabetic words from preview:
-- foobar[baaz] = quux
-- ^----^^^--^^-^-^--^
require('leap').opts.preview_filter = function(ch0, ch1, ch2)
return not (
ch1:match('%s') or
ch0:match('%a') and ch1:match('%a') and ch2:match('%a')
)
end
require('leap.user').set_repeat_keys('<enter>', '<backspace>')
end
},
{ {
"alexghergh/nvim-tmux-navigation", "alexghergh/nvim-tmux-navigation",
event = "VeryLazy", event = "VeryLazy",
@@ -189,6 +206,7 @@ local plugins = {
{ {
"MeanderingProgrammer/render-markdown.nvim", "MeanderingProgrammer/render-markdown.nvim",
dependencies = { "nvim-treesitter/nvim-treesitter", "nvim-tree/nvim-web-devicons" }, dependencies = { "nvim-treesitter/nvim-treesitter", "nvim-tree/nvim-web-devicons" },
event = "BufEnter *.md",
opts = {}, opts = {},
}, },
{ {

View File

@@ -24,6 +24,9 @@ lib.my.makeSwitch {
prefix = ''${HOME}/.npm-global prefix = ''${HOME}/.npm-global
registry = https://registry.npmmirror.com registry = https://registry.npmmirror.com
''; '';
programs.zsh.initContent = lib.mkAfter ''
export PATH=$PATH:$HOME/.npm-global/bin
'';
}; };
my.persist.homeDirs = [ my.persist.homeDirs = [
".npm" ".npm"

View File

@@ -17,6 +17,7 @@ lib.my.makeSwitch {
wm.all.enable = true; wm.all.enable = true;
style.enable = true; style.enable = true;
quickshell.enable = true; quickshell.enable = true;
wine.enable = true;
}; };
}; };
} }

View File

@@ -23,5 +23,8 @@ lib.my.makeSwitch {
".minecraft" ".minecraft"
".local/share/hmcl" ".local/share/hmcl"
]; ];
my.persist.homeFiles = [
".hmcl.json"
];
}; };
} }

View File

@@ -20,5 +20,8 @@ lib.my.makeSwitch {
gamescope gamescope
]; ];
}; };
my.persist.homeDirs = [
".local/share/Steam"
];
}; };
} }

View File

@@ -13,4 +13,9 @@ lib.my.makeHomePackageConfig {
"media" "media"
"spotube" "spotube"
]; ];
extraConfig = {
my.persist.homeDirs = [
".local/share/oss.krtirtho.spotube"
];
};
} }

View File

@@ -21,5 +21,8 @@ lib.my.makeSwitch {
]; ];
}) })
]; ];
my.persist.homeDirs = [
".config/obs-studio"
];
}; };
} }

25
modules/desktop/wine.nix Normal file
View File

@@ -0,0 +1,25 @@
{
config,
lib,
pkgs,
...
}:
lib.my.makeSwitch {
inherit config;
default = true;
optionName = "wine";
optionPath = [
"desktop"
"wine"
];
config' = {
my.home.home.packages = with pkgs; [
wineWayland
proton-ge-custom
bottles
];
my.persist.homeDirs = [
".local/share/bottles"
];
};
}

View File

@@ -128,15 +128,12 @@
{ {
"Ctrl+Alt+T".action.spawn = [ "Ctrl+Alt+T".action.spawn = [
"kitty" "kitty"
"-1"
]; ];
"Mod+T".action.spawn = [ "Mod+T".action.spawn = [
"kitty" "kitty"
"-1"
]; ];
"Mod+Return".action.spawn = [ "Mod+Return".action.spawn = [
"kitty" "kitty"
"-1"
]; ];
"Mod+G".action.spawn = [ "zen-beta" ]; "Mod+G".action.spawn = [ "zen-beta" ];
"Mod+E".action.spawn = [ "nemo" ]; "Mod+E".action.spawn = [ "nemo" ];

View File

@@ -37,7 +37,7 @@ lib.my.makeSwitch {
# Deduplicate and optimize nix store # Deduplicate and optimize nix store
auto-optimise-store = true; auto-optimise-store = true;
substituters = [ substituters = [
# "https://mirror.sjtu.edu.cn/nix-channels/store" "https://mirror.sjtu.edu.cn/nix-channels/store"
"https://mirrors.sjtug.sjtu.edu.cn/nix-channels/store" "https://mirrors.sjtug.sjtu.edu.cn/nix-channels/store"
"https://mirrors.ustc.edu.cn/nix-channels/store" "https://mirrors.ustc.edu.cn/nix-channels/store"
"https://nix-community.cachix.org" "https://nix-community.cachix.org"

View File

@@ -32,6 +32,11 @@ in
"virt" "virt"
"moonlight" "moonlight"
]; ];
extraConfig = {
my.persist.homeDirs = [
".config/Moonlight Game Streaming Project"
];
};
}) })
]; ];

View File

@@ -7,6 +7,12 @@
infuse prev { infuse prev {
cage.__output.patches.__append = [ ./cage-specify-output-name.patch ]; cage.__output.patches.__append = [ ./cage-specify-output-name.patch ];
matrix-synapse.__assign = final.stable.matrix-synapse; matrix-synapse.__assign = final.stable.matrix-synapse;
bottles.__input.removeWarningPopup.__assign = true;
qq.__output.preInstall.__append = ''
gappsWrapperArgs+=(
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--wayland-text-input-version=3}}"
)
'';
}; };
# this allows us to access specific version of nixpkgs # this allows us to access specific version of nixpkgs

View File

@@ -1,5 +1,5 @@
{ {
"data": "ENC[AES256_GCM,data:vq2ezKQE7Flae7h59qskI7N3pwCQFQCdADeRppBBOhlzXcfMbf7hquJ4XO/xCztvBM01GkcdiSL/imcL83q+zRXKhAcOiV/M//s=,iv:QPiFKMrX+7X9wwMHghXNN2X0dCAGTN85dsmJibZognk=,tag:EabTMy1YcklDvLr0WmtP7Q==,type:str]", "data": "ENC[AES256_GCM,data:7VtJ88KkGDRsHwqxjau5rZIOffHwT+zP214BKX9GQiXi2PTdCKAkNA78kJLL3Ru/+mR6f1McZapkwlFBnyoG+qrI+fyj5qhMqmk=,iv:GE2Caho/Ng7opzLD65WLMU4pZqHlllacT0IClz8cXlE=,tag:/VupPxTEvaaXEIpjVc2CUg==,type:str]",
"sops": { "sops": {
"age": [ "age": [
{ {
@@ -15,9 +15,9 @@
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBZRmpCRkZJNDYrZWp4dlJ6\nanY4cGp0cWduRWh6Smt2bCtCYXVKMGMrcFh3CmlNWW5YUGwrRjZHY2g3V0lwS011\nejRZbUVTMWlXVFU0aGpGUzJwZUdhbTAKLS0tIG85ZFBGRko1cm9WQVlXYWxBaENK\nT1d1ZVNMMGpBVkJwQnIxL1pjcWZFbDAKxfLrKO1Pf0RuomXbrG0RAOtPvPX+uqwf\ngnhIZMdjtOClZJBybCjqYbtpG3eOcmteTfc2MbWPbCHSSn0XaTsONw==\n-----END AGE ENCRYPTED FILE-----\n" "enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBZRmpCRkZJNDYrZWp4dlJ6\nanY4cGp0cWduRWh6Smt2bCtCYXVKMGMrcFh3CmlNWW5YUGwrRjZHY2g3V0lwS011\nejRZbUVTMWlXVFU0aGpGUzJwZUdhbTAKLS0tIG85ZFBGRko1cm9WQVlXYWxBaENK\nT1d1ZVNMMGpBVkJwQnIxL1pjcWZFbDAKxfLrKO1Pf0RuomXbrG0RAOtPvPX+uqwf\ngnhIZMdjtOClZJBybCjqYbtpG3eOcmteTfc2MbWPbCHSSn0XaTsONw==\n-----END AGE ENCRYPTED FILE-----\n"
} }
], ],
"lastmodified": "2025-04-13T06:45:42Z", "lastmodified": "2025-06-28T14:43:36Z",
"mac": "ENC[AES256_GCM,data:pVo1se/bQsIFLru+AL5JMEzqm05uU3Ei4gSKuAW94cV8nLGze8kDqVt5HY5JQIyPg/5HQjMhnozdn3u8YkG5NPMMAOVxSm79yeAjLjHhH9xj+mWB+z1uHq+zUK2omF2UuQO/jt6juGDQCUscjdQL2EY2UubdNV0xYexagXEbwSs=,iv:2ic3sGINuLfqDlfWAq5JlDlYA9PG1pTpBCbYffZqcjI=,tag:G2Y8y8YM6hiTBQB/eDjpNw==,type:str]", "mac": "ENC[AES256_GCM,data:ZrmJFSXOCrf5Nvf+v0IzEa8RH/3ZdmcD/mQBSUQ5SBSKOyh+uQcBQF5+aRe9GXjEyOVJolYA25xEHi8YyNI3+/VvAAPaP4g0LA22gpLelP7zvJBGB4F/74SbmkmkkU1yMSCihcyBrxQVtcPU3jtyLsyMalbigYOf28BInqxFNqM=,iv:h/VzHqyvIxBzNJ+IH8Ei/A5OV5QL73MKV92ayFxs81Y=,tag:WXqLzUGWkeEdaHnWcJAhgw==,type:str]",
"unencrypted_suffix": "_unencrypted", "unencrypted_suffix": "_unencrypted",
"version": "3.10.1" "version": "3.10.2"
} }
} }