Nix configurations for my personal machines (Linux & macOS)

refactor: modulise home manager a little bit

ovyerus.com 84498745 3afa048f

verified
+2 -1
.gitignore
···
age/
-
result
+
result
+
files/ags
+2 -2
flake.nix
···
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.backupFileExtension = "backup";
-
home-manager.users.ovy = import ./home/desktop; # TODO: module loading
+
home-manager.users.ovy = import ./home/wallsocket.nix;
home-manager.extraSpecialArgs = {inherit inputs;};
}
];
···
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.backupFileExtension = "backup";
-
home-manager.users.ovy = import ./home/darwin;
+
home-manager.users.ovy = import ./home/shimmer.nix;
home-manager.extraSpecialArgs = {inherit inputs;};
}
];
-31
home/common/cli.nix
···
-
{pkgs, ...}: {
-
# Misc packages
-
home.packages = with pkgs; [
-
age-plugin-yubikey
-
alejandra
-
cachix
-
curlie
-
colmena
-
hexyl
-
lazydocker
-
macchina
-
mix2nix
-
minisign
-
mtr
-
nix-output-monitor
-
pgcli
-
rage
-
xh
-
];
-
-
programs.ssh = {
-
enable = true;
-
matchBlocks."*" = {
-
identitiesOnly = true;
-
identityFile = "~/.ssh/id_ed25519_sk_rk";
-
user = "ovy";
-
};
-
};
-
-
home.sessionVariables.EDITOR = "code --wait";
-
}
home/common/git.nix home/programs/git.nix
home/common/nixpkgs.nix home/modules/nixpkgs.nix
+3 -9
home/common/shell/default.nix home/programs/fish.nix
···
-
{
-
pkgs,
-
lib,
-
...
-
}: {
-
imports = [./tools.nix];
-
+
{pkgs, ...}: {
# TODO: custom fifc rules (nix shell, nix run, ...)
# TODO: how to customise fifc pane
programs.fish = {
···
src = pkgs.fetchFromGitHub {
owner = "PatrickF1";
repo = "fzf.fish";
-
rev = "46c7bc6354494be5d869d56a24a46823a9fdded0";
+
rev = "8920367cf85eee5218cc25a11e209d46e2591e7a";
hash = "sha256-lxQZo6APemNjt2c21IL7+uY3YVs81nuaRUL7NDMcB6s=";
};
}
···
src = pkgs.fetchFromGitHub {
owner = "gazorby";
repo = "fifc";
-
rev = "2ee5beec7dfd28101026357633616a211fe240ae";
+
rev = "a01650cd432becdc6e36feeff5e8d657bd7ee84a";
hash = "sha256-Nrart7WAh2VQhsDDe0EFI59TqvBO56US2MraqencxgE";
};
}
+1
home/common/shell/tools.nix home/programs/common-cli.nix
···
}: {
# Core CLI tools
home.packages = with pkgs; [
+
curlie
du-dust
duf
fd
-11
home/darwin/default.nix
···
-
{lib, ...}: {
-
imports = [./configs.nix ../common/cli.nix ../common/git.nix ../common/nixpkgs.nix ../common/shell];
-
-
programs.ssh.includes = ["~/.orbstack/ssh/config"];
-
-
news.display = "silent";
-
programs.home-manager.enable = true;
-
home.homeDirectory = lib.mkForce "/Users/ovy";
-
home.username = "ovy";
-
home.stateVersion = "23.05";
-
}
-188
home/desktop/apps.nix
···
{
config,
pkgs,
-
lib,
...
}: {
-
programs.firefox = {
-
enable = true;
-
nativeMessagingHosts = [pkgs.kdePackages.plasma-browser-integration];
-
};
-
-
programs.chromium = {
-
enable = true;
-
package = pkgs.vivaldi.overrideAttrs (finalAttrs: previousAttrs: {
-
dontWrapQtApps = false;
-
dontPatchELF = true;
-
nativeBuildInputs = previousAttrs.nativeBuildInputs ++ [pkgs.kdePackages.wrapQtAppsHook];
-
});
-
commandLineArgs = ["--enable-blink-features=MiddleClickAutoscroll" "--enable-features=VaapiVideoDecoder"];
-
extensions = [
-
{id = "nngceckbapebfimnlniiiahkandclblb";} # Bitwarden
-
{id = "hhinaapppaileiechjoiifaancjggfjm";} # Web Scrobbler
-
{id = "jinjaccalgkegednnccohejagnlnfdag";} # Violentmonkey
-
{id = "fkagelmloambgokoeokbpihmgpkbgbfm";} # Indie Wiki Buddy
-
{id = "paponcgjfojgemddooebbgniglhkajkj";} # Ambient light for YouTube
-
{id = "immpkjjlgappgfkkfieppnmlhakdmaab";} # Imagus (TODO: find alternative?)
-
{id = "nhdogjmejiglipccpnnnanhbledajbpd";} # Vue devtools
-
{id = "nkgllhigpcljnhoakjkgaieabnkmgdkb";} # Don't Fuck With Paste
-
];
-
};
-
home.packages = with pkgs; [
alejandra
audacity
···
yt-dlp
];
-
systemd.user.targets.tray = {
-
Unit = {
-
Description = "Home Manager System Tray";
-
Requires = ["graphical-session-pre.target"];
-
};
-
};
-
services.owncloud-client.enable = true;
-
-
services.syncthing = {
-
enable = true;
-
tray.enable = true;
-
tray.package = pkgs.syncthingtray;
-
};
-
-
# Fix syncthingtray complaining about the tray not existing, because of the custom tray service above.
-
systemd.user.services.syncthingtray.Service.ExecStart = "${config.services.syncthing.tray.package}/bin/${config.service.syncthing.tray.command} --wait";
-
-
programs.vscode = {
-
enable = true;
-
enableUpdateCheck = false;
-
# TODO: move formatter to a central place
-
userSettings = {
-
# Formatters
-
"editor.defaultFormatter" = "esbenp.prettier-vscode";
-
"[elixir]"."editor.defaultFormatter" = "JakeBecker.elixir-ls";
-
"[nix]"."editor.defaultFormatter" = "kamadorueda.alejandra";
-
"[prisma]"."editor.defaultFormatter" = "Prisma.prisma";
-
"[python]"."editor.defaultFormatter" = "ms-python.python";
-
"[rust]"."editor.defaultFormatter" = "rust-lang.rust-analyzer";
-
-
# Sane defaults
-
"editor.tabSize" = 2;
-
"editor.insertSpaces" = true;
-
"breadcrumbs.enabled" = true;
-
"editor.wordWrap" = "off";
-
"security.workspace.trust.enabled" = false;
-
"security.workspace.trust.untrustedFiles" = "open";
-
"files.eol" = "\n";
-
"workbench.editor.empty.hint" = "hidden";
-
"comments.openView" = "never";
-
"editor.minimap.enabled" = false;
-
"editor.stickyScroll.enabled" = true;
-
"workbench.layoutControl.enabled" = false;
-
"diffEditor.ignoreTrimWhitespace" = true;
-
"editor.acceptSuggestionOnEnter" = "off";
-
"editor.formatOnSave" = true;
-
"editor.inlineSuggest.enabled" = true;
-
"editor.renderWhitespace" = "none";
-
"editor.suggestSelection" = "first";
-
"editor.tabCompletion" = "on";
-
"emmet.triggerExpansionOnTab" = true;
-
"explorer.confirmDelete" = false;
-
"explorer.confirmDragAndDrop" = false;
-
"redhat.telemetry.enabled" = false;
-
"workbench.tips.enabled" = false;
-
"workbench.tree.indent" = 16;
-
"workbench.tree.renderIndentGuides" = "always";
-
"editor.unicodeHighlight.ambiguousCharacters" = true;
-
"errorLens.enabledDiagnosticLevels" = ["error" "warning"];
-
"editor.acceptSuggestionOnCommitCharacter" = false;
-
"files.watcherExclude" = {
-
"**/.git/**" = true;
-
"**/node_modules/*/**" = true;
-
};
-
"search.exclude" = {
-
"**/node_modules" = true;
-
"**/bower_components" = true;
-
"**/*.code-search" = true;
-
"**/.yarn" = true;
-
};
-
"terminal.integrated.commandsToSkipShell" = [
-
"-workbench.action.quickOpenView"
-
"-workbench.action.quickOpen"
-
"-editor.action.clipboardCutAction"
-
];
-
# "prettier.prettierPath" = "prettierd";
-
"prettier.proseWrap" = "always";
-
-
# Pretties
-
"workbench.colorTheme" = "Dolch";
-
"workbench.iconTheme" = "chalice-icon-theme";
-
"editor.fontFamily" = "'Iosevka Solai', Menlo, Monaco, 'Courier New', monospace";
-
"editor.fontSize" = 16;
-
"terminal.integrated.fontFamily" = "'Iosevka Solai Term', Consolas, 'Courier New', monospace";
-
"terminal.integrated.fontSize" = 14;
-
"terminal.integrated.scrollback" = 9999999999;
-
"editor.fontLigatures" = true;
-
"editor.cursorSmoothCaretAnimation" = "on";
-
"editor.smoothScrolling" = true;
-
"zenMode.fullScreen" = false;
-
"zenMode.centerLayout" = false;
-
"zenMode.hideLineNumbers" = true;
-
-
# No barfing rainbows over my UI pls
-
"backgroundPhiColors.baseColor" = "#FFFFFF";
-
"backgroundPhiColors.bodySpacesEnabled" = false;
-
"backgroundPhiColors.indentErrorEnabled" = false;
-
"backgroundPhiColors.lineEnabled" = false;
-
"backgroundPhiColors.spacesAlpha" = 10;
-
"backgroundPhiColors.tokenActiveAlpha" = 30;
-
"editor.bracketPairColorization.enabled" = false;
-
-
# Codesnap
-
"codesnap.containerPadding" = "2em";
-
"codesnap.target" = "window";
-
"codesnap.transparentBackground" = true;
-
"codesnap.boxShadow" = "none";
-
"codesnap.showLineNumbers" = false;
-
"codesnap.showWindowControls" = false;
-
"codesnap.shutterAction" = "copy";
-
"codesnap.roundedCorners" = true;
-
-
# Git
-
"git.autorefresh" = true;
-
"git.autofetch" = false;
-
"git.autoStash" = true;
-
"git.mergeEditor" = false;
-
"git.confirmSync" = false;
-
"git.enableSmartCommit" = true;
-
"gitlens.advanced.messages" = {
-
"suppressLineUncommittedWarning" = true;
-
};
-
"gitlens.hovers.currentLine.over" = "annotation";
-
-
# Nix
-
"nix.enableLanguageServer" = true;
-
"nix.serverPath" = "nil";
-
"alejandra.program" = "alejandra";
-
-
# Elixir/erlang
-
"elixirLS.suggestSpecs" = false;
-
"elixirLS.fetchDeps" = false;
-
"elixirLS.mixEnv" = "dev";
-
"elixir.credo.ignoreWarningMessages" = true;
-
-
# Python
-
"python.analysis.typeCheckingMode" = "basic";
-
-
# JS
-
"debug.javascript.autoAttachFilter" = "onlyWithFlag";
-
-
# Misc
-
"yaml.format.proseWrap" = "always";
-
"workbench.startupEditor" = "none";
-
"remote.SSH.connectTimeout" = 30;
-
"remote.SSH.useLocalServer" = true;
-
"remote.SSH.path" = "/run/current-system/sw/bin/ssh";
-
"extensions.ignoreRecommendations" = true;
-
"svg.preview.mode" = "svg";
-
"vscord.status.problems.enabled" = false;
-
"vscord.status.state.text.editing" = "Working on {file_name}{file_extension}";
-
"vscord.ignore.workspaces" = ["~/Work"];
-
"typescript.updateImportsOnFileMove.enabled" = "never";
-
"git.openRepositoryInParentFolders" = "never";
-
"diffEditor.useInlineViewWhenSpaceIsLimited" = false;
-
"svelte.enable-ts-plugin" = true;
-
"gitlens.launchpad.indicator.enabled" = false;
-
"window.titleBarStyle" = "custom";
-
"files.simpleDialog.enable" = true;
-
"window.dialogStyle" = "custom";
-
};
-
};
programs.mangohud = {
enable = true;
-32
home/desktop/default.nix
···
systemctl-tui
];
-
programs.kitty = {
-
enable = true;
-
font.name = "Iosevka Solai";
-
font.size = 12;
-
shellIntegration.enableFishIntegration = true;
-
themeFile = "rose-pine";
-
settings = {
-
cursor_shape = "block";
-
cursor_shape_unfocused = "hollow";
-
scrollback_lines = 10000;
-
scrollback_pager = "moar +INPUT_LINE_NUMBER";
-
scrollback_pager_history_size = 5;
-
window_padding_width = 8;
-
hide_window_decorations = true;
-
tab_bar_style = "powerline"; # custom?
-
# tab_bar_margin_width = "8.0";
-
# tab_bar_margin_height = "8.0 0.0";
-
tab_powerline_style = "slanted";
-
tab_activity_symbol = "🞛";
-
tab_title_template = "{fmt.fg.magenta}{bell_symbol}{activity_symbol}{fmt.fg.tab}{title}";
-
# window logo?
-
paste_actions = "quote-urls-at-prompt,confirm-if-large";
-
-
background_opacity = "0.5";
-
background_blur = 64;
-
-
notify_on_cmd_finish = "unfocused 10.0 bell";
-
macos_option_as_alt = "left";
-
wayland_enable_ime = false;
-
};
-
};
-
news.display = "silent";
programs.home-manager.enable = false;
home.homeDirectory = "/home/ovy";
home/desktop/niri.nix home/modules/niri.nix
home/desktop/xdg.nix home/modules/xdg.nix
+10
home/modules/ssh.nix
···
+
{
+
programs.ssh = {
+
enable = true;
+
matchBlocks."*" = {
+
identitiesOnly = true;
+
identityFile = "~/.ssh/id_ed25519_sk_rk";
+
user = "ovy";
+
};
+
};
+
}
+26
home/programs/browser.nix
···
+
{pkgs, ...}: {
+
programs.firefox = {
+
enable = true;
+
nativeMessagingHosts = [pkgs.kdePackages.plasma-browser-integration];
+
};
+
+
programs.chromium = {
+
enable = true;
+
package = pkgs.vivaldi.overrideAttrs (finalAttrs: previousAttrs: {
+
dontWrapQtApps = false;
+
dontPatchELF = true;
+
nativeBuildInputs = previousAttrs.nativeBuildInputs ++ [pkgs.kdePackages.wrapQtAppsHook];
+
});
+
commandLineArgs = ["--enable-blink-features=MiddleClickAutoscroll" "--enable-features=VaapiVideoDecoder"];
+
extensions = [
+
{id = "nngceckbapebfimnlniiiahkandclblb";} # Bitwarden
+
{id = "hhinaapppaileiechjoiifaancjggfjm";} # Web Scrobbler
+
{id = "jinjaccalgkegednnccohejagnlnfdag";} # Violentmonkey
+
{id = "fkagelmloambgokoeokbpihmgpkbgbfm";} # Indie Wiki Buddy
+
{id = "paponcgjfojgemddooebbgniglhkajkj";} # Ambient light for YouTube
+
{id = "immpkjjlgappgfkkfieppnmlhakdmaab";} # Imagus (TODO: find alternative?)
+
{id = "nhdogjmejiglipccpnnnanhbledajbpd";} # Vue devtools
+
{id = "nkgllhigpcljnhoakjkgaieabnkmgdkb";} # Don't Fuck With Paste
+
];
+
};
+
}
+19
home/programs/desktop-cli.nix
···
+
{pkgs, ...}: {
+
# Misc packages
+
home.packages = with pkgs; [
+
age-plugin-yubikey
+
alejandra
+
cachix
+
colmena
+
hexyl
+
lazydocker
+
macchina
+
mix2nix
+
minisign
+
mtr
+
nix-output-monitor
+
pgcli
+
rage
+
systemctl-tui
+
];
+
}
+33
home/programs/kitty.nix
···
+
{
+
programs.kitty = {
+
enable = true;
+
font.name = "Iosevka Solai";
+
font.size = 12;
+
shellIntegration.enableFishIntegration = true;
+
themeFile = "rose-pine";
+
settings = {
+
cursor_shape = "block";
+
cursor_shape_unfocused = "hollow";
+
scrollback_lines = 10000;
+
scrollback_pager = "moar +INPUT_LINE_NUMBER";
+
scrollback_pager_history_size = 5;
+
window_padding_width = 8;
+
hide_window_decorations = true;
+
tab_bar_style = "powerline"; # custom?
+
# tab_bar_margin_width = "8.0";
+
# tab_bar_margin_height = "8.0 0.0";
+
tab_powerline_style = "slanted";
+
tab_activity_symbol = "🞛";
+
tab_title_template = "{fmt.fg.magenta}{bell_symbol}{activity_symbol}{fmt.fg.tab}{title}";
+
# window logo?
+
paste_actions = "quote-urls-at-prompt,confirm-if-large";
+
+
background_opacity = "0.5";
+
background_blur = 64;
+
+
notify_on_cmd_finish = "unfocused 10.0 bell";
+
macos_option_as_alt = "left";
+
wayland_enable_ime = false;
+
};
+
};
+
}
+15
home/programs/syncthing.nix
···
+
{
+
config,
+
lib,
+
pkgs,
+
...
+
}: {
+
services.syncthing = {
+
enable = true;
+
tray.enable = true;
+
tray.package = pkgs.syncthingtray;
+
};
+
+
# Fix syncthingtray complaining about the tray not existing, because of the custom tray service above.
+
systemd.user.services.syncthingtray.Service.ExecStart = lib.mkForce "${config.services.syncthing.tray.package}/bin/${config.services.syncthing.tray.command} --wait";
+
}
+149
home/programs/vscode.nix
···
+
{
+
home.sessionVariables.EDITOR = "code --wait";
+
+
programs.vscode = {
+
enable = true;
+
enableUpdateCheck = false;
+
# TODO: move formatter to a central place
+
userSettings = {
+
# Formatters
+
"editor.defaultFormatter" = "esbenp.prettier-vscode";
+
"[elixir]"."editor.defaultFormatter" = "JakeBecker.elixir-ls";
+
"[nix]"."editor.defaultFormatter" = "kamadorueda.alejandra";
+
"[prisma]"."editor.defaultFormatter" = "Prisma.prisma";
+
"[python]"."editor.defaultFormatter" = "ms-python.python";
+
"[rust]"."editor.defaultFormatter" = "rust-lang.rust-analyzer";
+
+
# Sane defaults
+
"editor.tabSize" = 2;
+
"editor.insertSpaces" = true;
+
"breadcrumbs.enabled" = true;
+
"editor.wordWrap" = "off";
+
"security.workspace.trust.enabled" = false;
+
"security.workspace.trust.untrustedFiles" = "open";
+
"files.eol" = "\n";
+
"workbench.editor.empty.hint" = "hidden";
+
"comments.openView" = "never";
+
"editor.minimap.enabled" = false;
+
"editor.stickyScroll.enabled" = true;
+
"workbench.layoutControl.enabled" = false;
+
"diffEditor.ignoreTrimWhitespace" = true;
+
"editor.acceptSuggestionOnEnter" = "off";
+
"editor.formatOnSave" = true;
+
"editor.inlineSuggest.enabled" = true;
+
"editor.renderWhitespace" = "none";
+
"editor.suggestSelection" = "first";
+
"editor.tabCompletion" = "on";
+
"emmet.triggerExpansionOnTab" = true;
+
"explorer.confirmDelete" = false;
+
"explorer.confirmDragAndDrop" = false;
+
"redhat.telemetry.enabled" = false;
+
"workbench.tips.enabled" = false;
+
"workbench.tree.indent" = 16;
+
"workbench.tree.renderIndentGuides" = "always";
+
"editor.unicodeHighlight.ambiguousCharacters" = true;
+
"errorLens.enabledDiagnosticLevels" = ["error" "warning"];
+
"editor.acceptSuggestionOnCommitCharacter" = false;
+
"files.watcherExclude" = {
+
"**/.git/**" = true;
+
"**/node_modules/*/**" = true;
+
};
+
"search.exclude" = {
+
"**/node_modules" = true;
+
"**/bower_components" = true;
+
"**/*.code-search" = true;
+
"**/.yarn" = true;
+
};
+
"terminal.integrated.commandsToSkipShell" = [
+
"-workbench.action.quickOpenView"
+
"-workbench.action.quickOpen"
+
"-editor.action.clipboardCutAction"
+
];
+
# "prettier.prettierPath" = "prettierd";
+
"prettier.proseWrap" = "always";
+
+
# Pretties
+
"workbench.colorTheme" = "Dolch";
+
"workbench.iconTheme" = "chalice-icon-theme";
+
"editor.fontFamily" = "'Iosevka Solai', Menlo, Monaco, 'Courier New', monospace";
+
"editor.fontSize" = 16;
+
"terminal.integrated.fontFamily" = "'Iosevka Solai Term', Consolas, 'Courier New', monospace";
+
"terminal.integrated.fontSize" = 14;
+
"terminal.integrated.scrollback" = 9999999999;
+
"editor.fontLigatures" = true;
+
"editor.cursorSmoothCaretAnimation" = "on";
+
"editor.smoothScrolling" = true;
+
"zenMode.fullScreen" = false;
+
"zenMode.centerLayout" = false;
+
"zenMode.hideLineNumbers" = true;
+
+
# No barfing rainbows over my UI pls
+
"backgroundPhiColors.baseColor" = "#FFFFFF";
+
"backgroundPhiColors.bodySpacesEnabled" = false;
+
"backgroundPhiColors.indentErrorEnabled" = false;
+
"backgroundPhiColors.lineEnabled" = false;
+
"backgroundPhiColors.spacesAlpha" = 10;
+
"backgroundPhiColors.tokenActiveAlpha" = 30;
+
"editor.bracketPairColorization.enabled" = false;
+
+
# Codesnap
+
"codesnap.containerPadding" = "2em";
+
"codesnap.target" = "window";
+
"codesnap.transparentBackground" = true;
+
"codesnap.boxShadow" = "none";
+
"codesnap.showLineNumbers" = false;
+
"codesnap.showWindowControls" = false;
+
"codesnap.shutterAction" = "copy";
+
"codesnap.roundedCorners" = true;
+
+
# Git
+
"git.autorefresh" = true;
+
"git.autofetch" = false;
+
"git.autoStash" = true;
+
"git.mergeEditor" = false;
+
"git.confirmSync" = false;
+
"git.enableSmartCommit" = true;
+
"gitlens.advanced.messages" = {
+
"suppressLineUncommittedWarning" = true;
+
};
+
"gitlens.hovers.currentLine.over" = "annotation";
+
+
# Nix
+
"nix.enableLanguageServer" = true;
+
"nix.serverPath" = "nil";
+
"alejandra.program" = "alejandra";
+
+
# Elixir/erlang
+
"elixirLS.suggestSpecs" = false;
+
"elixirLS.fetchDeps" = false;
+
"elixirLS.mixEnv" = "dev";
+
"elixir.credo.ignoreWarningMessages" = true;
+
+
# Python
+
"python.analysis.typeCheckingMode" = "basic";
+
+
# JS
+
"debug.javascript.autoAttachFilter" = "onlyWithFlag";
+
+
# Misc
+
"yaml.format.proseWrap" = "always";
+
"workbench.startupEditor" = "none";
+
"remote.SSH.connectTimeout" = 30;
+
"remote.SSH.useLocalServer" = true;
+
"remote.SSH.path" = "/run/current-system/sw/bin/ssh";
+
"extensions.ignoreRecommendations" = true;
+
"svg.preview.mode" = "svg";
+
"vscord.status.problems.enabled" = false;
+
"vscord.status.state.text.editing" = "Working on {file_name}{file_extension}";
+
"vscord.ignore.workspaces" = ["~/Work"];
+
"typescript.updateImportsOnFileMove.enabled" = "never";
+
"git.openRepositoryInParentFolders" = "never";
+
"diffEditor.useInlineViewWhenSpaceIsLimited" = false;
+
"svelte.enable-ts-plugin" = true;
+
"gitlens.launchpad.indicator.enabled" = false;
+
"window.titleBarStyle" = "custom";
+
"files.simpleDialog.enable" = true;
+
"window.dialogStyle" = "custom";
+
};
+
};
+
}
+10
home/server.nix
···
+
{...}: {
+
imports = [./modules/nixpkgs.nix ./programs/common-cli.nix ./programs/fish.nix];
+
home.sessionVariables.EDITOR = "micro";
+
+
news.display = "silent";
+
programs.home-manager.enable = true;
+
home.homeDirectory = "/home/ovy";
+
home.username = "ovy";
+
home.stateVersion = "23.05";
+
}
+19
home/shimmer.nix
···
+
{lib, ...}: {
+
imports = [
+
./darwin/configs.nix
+
./modules/nixpkgs.nix
+
./modules/ssh.nix
+
./programs/common-cli.nix
+
./programs/desktop-cli.nix
+
./programs/fish.nix
+
./programs/git.nix
+
];
+
+
programs.ssh.includes = ["~/.orbstack/ssh/config"];
+
+
news.display = "silent";
+
programs.home-manager.enable = true;
+
home.homeDirectory = lib.mkForce "/Users/ovy";
+
home.username = "ovy";
+
home.stateVersion = "23.05";
+
}
+34
home/wallsocket.nix
···
+
{pkgs, ...}: {
+
imports = [
+
./desktop/apps.nix
+
./modules/nixpkgs.nix
+
./modules/ssh.nix
+
./modules/xdg.nix
+
./programs/browser.nix
+
./programs/common-cli.nix
+
./programs/desktop-cli.nix
+
./programs/fish.nix
+
./programs/git.nix
+
./programs/kitty.nix
+
./programs/syncthing.nix
+
./programs/vscode.nix
+
];
+
+
systemd.user.targets.tray = {
+
Unit = {
+
Description = "Home Manager System Tray";
+
Requires = ["graphical-session-pre.target"];
+
};
+
};
+
+
# Temporary location for these
+
home.packages = with pkgs; [ags inotify-tools];
+
+
home.sessionVariables.DOCKER_HOST = "unix:///run/user/1000/podman/podman.sock";
+
+
news.display = "silent";
+
programs.home-manager.enable = false;
+
home.homeDirectory = "/home/ovy";
+
home.username = "ovy";
+
home.stateVersion = "24.05";
+
}