add overlay to lock vscode version, git config into symlink

This commit is contained in:
greyweather committed 2026-09-07 00:49:50 +01:00
1 parent 846be90bda
commit 237582057e
13 files changed
+155 -101

No files matched your search

@@ -4,7 +4,7 @@
"authenticated": false,
"settingsSync": false,
"url": "https://cloud.equicord.org/",
"settingsSyncVersion": 1787926226537
"settingsSyncVersion": 1788610714905
},
"enableOnlineThemes": true,
"enabledThemeLinks": [
@@ -118,7 +118,9 @@
"settingsLocation": "aboveNitro"
},
"WebKeybinds": {
"enabled": true
"enabled": true,
"showNavigationButtons": true,
"overrideCommonKeybinds": true
},
"WebScreenShareFixes": {
"enabled": true
@@ -595,7 +597,7 @@
"enabled": false
},
"AudioPlayerAPI": {
"enabled": false
"enabled": true
},
"HeaderBarAPI": {
"enabled": true
@@ -1204,6 +1206,9 @@
},
"SidebarChat": {
"enabled": false
},
"VoiceMessagesInBackground": {
"enabled": true
}
},
"useQuickCss": true,
@@ -1,16 +1,16 @@
[remmina]
password=fEyBOZsHZDgKWSF2JAM6zg==
password=.
gateway_username=
smartcard_pin=
window_height=780
notes_text=
vc=
notes_text=
window_height=780
preferipv6=0
ssh_tunnel_loopback=1
serialname=
tls-seclevel=
sound=local
scale=2
ssh_tunnel_loopback=1
tls-seclevel=
serialname=
sound=local
printer_overrides=
name=takamaki
console=0
@@ -22,6 +22,7 @@ security=
disable_fastpath=0
left-handed=0
multitransport=0
postcommand=
ssh_tunnel_command_args=
group=
server=greyweather.dev
@@ -31,26 +32,25 @@ glyph-cache=0
rdp_idle_keypress_combo=1
disableclipboard=0
rdp_idle_keypress_time=No
audio-output=
disconnect-prompt=0
ssh_tunnel_command=
monitorids=
parallelpath=
disconnect-prompt=0
gateway_server=
protocol=RDP
old-license=0
labels=
audio-output=
protocol=RDP
serialpermissive=0
old-license=0
ssh_tunnel_password=
resolution_mode=2
cert_ignore=0
assistance_mode=0
pth=
loadbalanceinfo=
disableautoreconnect=0
loadbalanceinfo=
ssh_tunnel_enabled=1
clientbuild=
serialpermissive=0
postcommand=
gateway_server=
clientname=
resolution_width=0
allow_empty_pass=0
@@ -73,7 +73,7 @@ serialpath=
gateway_password=
enable-autostart=0
usb=
ssh_tunnel_passphrase=
ssh_tunnel_passphrase=.
shareparallel=0
smartcardname=
disablepasswordstoring=0
@@ -96,7 +96,7 @@ microphone=
timeout=
ssh_tunnel_privatekey=/home/grey/.ssh/id_takamaki
gwtransp=auto
ssh_tunnel_server=takamaki
ssh_tunnel_server=greyweather.dev:2222
ignore-tls-errors=1
window_maximize=1
forceipvx=0
+36
View File
@@ -0,0 +1,36 @@
[commit]
gpgSign = true
[diff]
guitool = "kitty.gui"
tool = "kitty"
[difftool]
prompt = false
trustExitCode = true
[difftool "kitty"]
cmd = "kitten diff $LOCAL $REMOTE"
[difftool "kitty.gui"]
cmd = "kitten diff $LOCAL $REMOTE"
[filter "lfs"]
clean = "git-lfs clean -- %f"
process = "git-lfs filter-process"
required = true
smudge = "git-lfs smudge -- %f"
[gpg]
format = "openpgp"
[gpg "openpgp"]
program = "gpg"
[tag]
gpgSign = true
[user]
email = "grey@greyweather.dev"
name = "Grey Jones"
signingKey = "CC7388DF8E1890729921BCFF7C67C51C2FF524D9"
+23 -45
View File
@@ -1,59 +1,37 @@
{
"editor.semanticHighlighting.enabled": true,
"[nix]": {
"editor.tabSize": 2
},
"chat.disableAIFeatures": true,
"patternStore.savedPatterns": [
{
"label": "convert JSON pairs to Nix format",
"find": "\"(\\w+)\": (.+?),?$",
"replace": "$1 = $2;",
"flags": {
"isRegex": true,
"isCaseSensitive": false,
"matchWholeWord": false,
"isMultiline": false
},
"filesToInclude": "*.nix",
"filesToExclude": "*.json",
"scope": "global"
},
{
"label": "convert JSON opening bracket to Nix format",
"find": "(\"\\w+\"): \\{$",
"replace": "$1 = {",
"flags": {
"isRegex": true,
"isCaseSensitive": false,
"matchWholeWord": false,
"isMultiline": false
},
"filesToInclude": "*.nix",
"filesToExclude": "*.json",
"scope": "global"
},
{
"label": "convert JSON closing bracket to Nix format",
"find": "\\},?$",
"replace": "};",
"flags": {
"isRegex": true,
"isCaseSensitive": false,
"matchWholeWord": false,
"isMultiline": false
},
"filesToInclude": "*.nix",
"filesToExclude": "*.json",
"scope": "global"
}
],
"search.exclude": {
"**/assets/**": true,
"**/dotfiles/**": true,
"**/flake.lock": true
},
"update.mode": "none",
"workbench.welcomePage.walkthroughs.openOnInstall": false,
"explorer.confirmDelete": false,
"update.showReleaseNotes": false,
"explorer.confirmDragAndDrop": false
"explorer.confirmDragAndDrop": false,
"nix.enableLanguageServer": true,
"nix.serverPath": "nixd",
"nix.serverSettings": {
"nixd": {
"formatting": {
"command": ["nixfmt"],
},
"options": {
// By default, this entry will be read from `import <nixpkgs> { }`.
// You can write arbitrary Nix expressions here, to produce valid "options" declaration result.
// Tip: for flake-based configuration, utilize `builtins.getFlake`
"nixos": {
"expr": "(builtins.getFlake \"/home/grey/flake\").nixosModules.options.options",
},
"home-manager": {
"expr": "(builtins.getFlake \"/home/grey/flake\").homeModules.options.options"
}
}
}
}
}
Generated
+4 -4
View File
@@ -187,11 +187,11 @@
]
},
"locked": {
"lastModified": 1788653102,
"narHash": "sha256-UHCmPae6q8t15dMGZ6d+Imkpu+tQFxxOWD8+n/5AWT4=",
"lastModified": 1788729777,
"narHash": "sha256-giJweBm8UNIi56rdA37RkaU7RPCyiU4ml42jPHfIDqc=",
"ref": "refs/heads/main",
"rev": "18982a624707263369598f49f80f55c65357610b",
"revCount": 54,
"rev": "e4a3a0344d3f0701e26be7fc8a0f271d34058018",
"revCount": 55,
"type": "git",
"url": "https://git.greyweather.dev/greyweather/nix-helper-flake"
},
+2 -2
View File
@@ -11,14 +11,14 @@
kdePackages.filelight
];
in {
flake.nixosModules.graphics = { pkgs, ... }: {
flake.nixosModules.graphics = { pkgs, config, ... }: {
imports = [ self.nixosModules.graphicsOptions ];
environment.systemPackages = with pkgs; [
wayland-utils
mesa-demos
vulkan-tools
] ++ (if !config.features.nixos.home-manager.enable then (extraPackages pkgs) else []);
] ++ (if !(config.features.nixos.home-manager.enable) then (extraPackages pkgs) else []);
fonts.packages = with pkgs; [
iosevka-comfy.comfy
+3 -3
View File
@@ -1,10 +1,10 @@
{ inputs, self, ... }: {
{ ... }: {
imports = [ ./niri.nix ];
flake.nixosModules.graphics = { config, pkgs, lib, ... }: {
# override niri source to use https://github.com/barrulus/biri
config = lib.mkIf (builtins.elem "biri" config.components.windowManagers) {
programs.niri.package = self.packages.${pkgs.stdenv.hostPlatform.system}.biri;
programs.niri.package = pkgs.biri;
home-manager.users.${config.info.userName} = lib.mkIf (config.features.nixos.home-manager.enable) {
components.windowManagers = [ "biri" ];
@@ -12,7 +12,7 @@
};
};
flake.homeModules.graphics = { config, pkgs, lib, inputs, ... }: {
flake.homeModules.graphics = { config, lib, ... }: {
config = lib.mkIf (builtins.elem "biri" config.components.windowManagers) {
features.applications.shellScripts = {
niri-scratch-workspace-toggle = ''
+2 -2
View File
@@ -1,9 +1,9 @@
{ inputs, self, ... }: let
{ inputs, ... }: let
optionName = "features.applications.gui.vscode.enable";
in {
imports = [ (inputs.helpers.mkStandardFeature.flakeModule "graphics" optionName "VS Code") ];
flake.nixosModules.graphics = { config, pkgs, lib, ... }: {
flake.nixosModules.graphics = { config, pkgs, ... }: {
imports = [ (inputs.helpers.mkStandardFeature.nixosModule { inherit config optionName; } {
environment.systemPackages = [ pkgs.vscode ];
}) ];
+12 -24
View File
@@ -29,19 +29,11 @@
homeDirectory = "/home/${config.home.username}";
file = inputs.helpers.localBinFromStringAttrs config.features.applications.shellScripts;
};
programs.sftpman = lib.mkIf (config.info.hostName != "sakamoto") {
enable = true;
mounts = {
sakamoto = {
host = "sakamoto";
mountDestPath = "/home/grey/mounts/ssh/sakamoto";
mountPoint = "/";
sshKey = "/home/grey/.ssh/id_sakamoto";
user = "grey";
};
};
activation.linkGitConfig = lib.hm.dag.entryAfter ["writeBoundary"] (inputs.helpers.mkSymlinkActivationScript {
target = "${config.home.homeDirectory}/.gitconfig";
source = "${config.info.rootPath}/dotfiles/shared/git.conf";
});
};
targets.genericLinux.enable = config.info.isStandalone;
@@ -60,20 +52,16 @@
services.gnome-keyring.enable = config.info.isStandalone;
programs = {
git = {
sftpman = lib.mkIf (config.info.hostName != "sakamoto") {
enable = true;
lfs.enable = true;
settings = {
user.name = "Grey Jones";
user.email = "grey@greyweather.dev";
mounts = {
sakamoto = {
host = "sakamoto";
mountDestPath = "/home/grey/mounts/ssh/sakamoto";
mountPoint = "/";
sshKey = "/home/grey/.ssh/id_sakamoto";
user = "grey";
};
signing = {
format = "openpgp";
key = "CC7388DF8E1890729921BCFF7C67C51C2FF524D9";
signByDefault = true;
};
};
+7 -1
View File
@@ -54,15 +54,21 @@
};
environment.systemPackages = with pkgs; [
git
fzf
jq
busybox
ethtool
hyperfine
nixd
nixfmt
] ++ config.features.applications.extraPackages;
programs = {
git = {
enable = true;
lfs.enable = true;
};
nano = {
enable = true;
nanorc = ''
+2
View File
@@ -50,6 +50,7 @@
extraPackages = with pkgs; [
moonlight-qt
github-desktop
];
};
};
@@ -103,6 +104,7 @@
jetbrains.idea
xarchiver
kdePackages.kate
kdePackages.kdeconnect-kde
loupe
sshfs
];
+18
View File
@@ -0,0 +1,18 @@
{ self, ... }: {
flake.nixosModules.options = { ... }: {
imports = with self.nixosModules; [
globalOptions
graphicsOptions
gamingOptions
];
};
flake.homeModules.options = { ... }: {
imports = with self.homeModules; [
globalOptions
audioOptions
graphicsOptions
gamingOptions
];
};
}
+21
View File
@@ -0,0 +1,21 @@
{ inputs, self, ... }: let
overlays = [
(final: prev: let
stablePkgs = import inputs.nixpkgs-26-05 {
system = prev.stdenv.hostPlatform.system;
config.allowUnfree = true;
};
in {
vscode = stablePkgs.vscode;
biri = self.packages.${prev.stdenv.hostPlatform.system}.biri;
})
];
in {
flake.nixosModules.global = { ... }: {
nixpkgs.overlays = overlays;
};
flake.homeModules.global = { lib, config, ... }: {
nixpkgs.overlays = lib.mkIf (config.info.isStandalone) overlays;
};
}