refactor: organize hosts configs into dedicated directory
- Move and rename host-specific configurations (e.g., wsl to hosts/wsl) - Add home.nix files for mbp and wsl, importing common modules - Update mbp flake.nix path to new hosts/mbp/configuration.nix - Integrate home-manager for user environments on macOS/WSL - Update flake.lock inputs (nixpkgs, home-manager, homebrew) for latest versions - Add README.md with project overview and setup instructions This restructures the repo for multi-host support, improves modularity, and ensures reproducible builds with updated dependencies.
This commit is contained in:
parent
42b2706505
commit
665a701aaa
21 changed files with 331 additions and 418 deletions
73
hosts/mbp/configuration.nix
Executable file
73
hosts/mbp/configuration.nix
Executable file
|
|
@ -0,0 +1,73 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
#Disable nix managment, since we use nix-determinate
|
||||
nix.enable = false;
|
||||
|
||||
imports = [
|
||||
../../modules/homebrew.nix
|
||||
];
|
||||
homebrew = {
|
||||
enable = true;
|
||||
|
||||
onActivation.autoUpdate = true;
|
||||
onActivation.upgrade = true;
|
||||
#onActivation.cleanup = "zap";
|
||||
|
||||
casks = [
|
||||
"bettermouse"
|
||||
"telegram"
|
||||
"meta"
|
||||
"cryptomator"
|
||||
"citrix-workspace"
|
||||
"mullvad-vpn"
|
||||
"vscodium"
|
||||
"obs"
|
||||
"arc"
|
||||
"tailscale-app"
|
||||
"blender"
|
||||
"UTM"
|
||||
"Keka"
|
||||
"Secretive"
|
||||
"Obsidian"
|
||||
"Discord"
|
||||
"Element"
|
||||
"IINA"
|
||||
"ghostty"
|
||||
"orion"
|
||||
];
|
||||
|
||||
masApps = {
|
||||
"Bitwarden" = 1352778147;
|
||||
"DropOver" = 1355679052;
|
||||
"Yubico Authenticator" = 1497506650;
|
||||
};
|
||||
};
|
||||
|
||||
system.primaryUser = "duumxh";
|
||||
users.users.duumxh.home = "/Users/duumxh";
|
||||
|
||||
security.pam.services.sudo_local.touchIdAuth = true;
|
||||
system.stateVersion = 5;
|
||||
system.defaults = {
|
||||
screencapture.type = "png";
|
||||
dock = {
|
||||
autohide = true;
|
||||
autohide-delay = 0.0;
|
||||
mineffect = "scale";
|
||||
minimize-to-application = true;
|
||||
mru-spaces = false;
|
||||
show-recents = false;
|
||||
tilesize = 40;
|
||||
};
|
||||
|
||||
finder = {
|
||||
AppleShowAllFiles = true;
|
||||
AppleShowAllExtensions = true;
|
||||
ShowPathbar = true;
|
||||
ShowStatusBar = true;
|
||||
};
|
||||
};
|
||||
|
||||
nixpkgs.hostPlatform = "aarch64-darwin";
|
||||
}
|
||||
22
hosts/mbp/home.nix
Executable file
22
hosts/mbp/home.nix
Executable file
|
|
@ -0,0 +1,22 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
../../modules/common.nix
|
||||
../../modules/programs/bat.nix
|
||||
../../modules/programs/eza.nix
|
||||
../../modules/programs/fzf.nix
|
||||
../../modules/programs/git.nix
|
||||
../../modules/programs/k9s.nix
|
||||
../../modules/programs/micro.nix
|
||||
../../modules/programs/ssh.nix
|
||||
../../modules/programs/zoxide.nix
|
||||
../../modules/programs/zsh.nix
|
||||
];
|
||||
|
||||
programs.zsh = {
|
||||
localVariables = {
|
||||
SSH_AUTH_SOCK = "/Users/duumxh/Library/Containers/com.maxgoedjen.Secretive.SecretAgent/Data/socket.ssh";
|
||||
};
|
||||
};
|
||||
}
|
||||
29
hosts/wsl/configuration.nix
Executable file
29
hosts/wsl/configuration.nix
Executable file
|
|
@ -0,0 +1,29 @@
|
|||
# Edit this configuration file to define what should be installed on
|
||||
# your system. Help is available in the configuration.nix(5) man page, on
|
||||
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
|
||||
|
||||
# NixOS-WSL specific options are documented on the NixOS-WSL repository:
|
||||
# https://github.com/nix-community/NixOS-WSL
|
||||
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||
wsl.defaultUser = "duumxh";
|
||||
wsl.interop.register = true;
|
||||
|
||||
programs.zsh.enable = true;
|
||||
|
||||
users.users.duumxh = {
|
||||
isNormalUser = true;
|
||||
shell = pkgs.zsh;
|
||||
};
|
||||
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
# on your system were taken. It's perfectly fine and recommended to leave
|
||||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
system.stateVersion = "25.05"; # Did you read the comment?
|
||||
}
|
||||
21
hosts/wsl/home.nix
Executable file
21
hosts/wsl/home.nix
Executable file
|
|
@ -0,0 +1,21 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
../../modules/common.nix
|
||||
../../modules/programs/bat.nix
|
||||
../../modules/programs/eza.nix
|
||||
../../modules/programs/fzf.nix
|
||||
../../modules/programs/git.nix
|
||||
../../modules/programs/k9s.nix
|
||||
../../modules/programs/micro.nix
|
||||
../../modules/programs/ssh.nix
|
||||
../../modules/programs/zoxide.nix
|
||||
../../modules/programs/zsh.nix
|
||||
];
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue