HomeManager

This commit is contained in:
2026-01-22 13:30:22 -07:00
parent 2fc2e6cd9c
commit daa8c99faa
3 changed files with 92 additions and 69 deletions

View File

@@ -16,6 +16,7 @@
./modules/services.nix
./modules/aliases.nix
./modules/assets.nix
./modules/home-manager.nix
];
nix.settings.experimental-features = [ "nix-command" "flakes" ];

82
modules/home-manager.nix Normal file
View File

@@ -0,0 +1,82 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
settings = import ../settings.nix;
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.${settings.username} = { pkgs, ... }: {
home.stateVersion = "24.11";
home.sessionVariables = {
BROWSER = "librewolf";
SSH_AUTH_SOCK = "/home/${settings.username}/.bitwarden-ssh-agent.sock";
};
home.packages = with pkgs; [
# Browsers and comms
discord
signal-desktop
librewolf
# Development tools
go
cargo
gnumake
rustc
rust-analyzer
rustfmt
nodejs_24
openssh
nodePackages."pnpm"
openssl
killall
ffmpeg
zed-editor
vscodium
usbutils
qmk
ghostty
neofetch
deepfilternet
pavucontrol
texliveFull
# Desktop applications
bitwarden-desktop
vlc
streamrip
cider-2
zotero
prismlauncher
lrcget
impression
streamcontroller
onlyoffice-desktopeditors
# Gnome Extensions
gnomeExtensions.blur-my-shell
gnomeExtensions.just-perfection
gnomeExtensions.arc-menu
gnomeExtensions.appindicator
];
programs.git = {
enable = true;
userName = settings.gitName;
userEmail = settings.gitEmail;
extraConfig = {
user.signingkey = settings.gitKey;
gpg.format = "ssh";
commit.gpgsign = true;
};
};
};
}

View File

@@ -1,64 +1,17 @@
{ config, pkgs, ... }:
let
settings = import ../settings.nix;
in
{
# Enable unfree globally
nixpkgs.config.allowUnfree = true;
environment.variables.BROWSER = "librewolf";
environment.variables.SSH_AUTH_SOCK = "/home/${settings.username}/.bitwarden-ssh-agent.sock";
environment.systemPackages =
with pkgs; [
# Browsers and comms
discord
signal-desktop
librewolf
# Development tools
go
cargo
gnumake
rustc
rust-analyzer
rustfmt
nodejs_24
openssh
nodePackages."pnpm"
openssl
killall
ffmpeg
zed-editor
vscodium
usbutils
qmk-udev-rules
qmk
ghostty
neofetch
deepfilternet
pavucontrol
texliveFull
# Desktop applications
bitwarden-desktop
vlc
streamrip
cider-2
zotero
prismlauncher
lrcget
impression
streamcontroller
onlyoffice-desktopeditors
# Gnome Extensions
gnomeExtensions.blur-my-shell
gnomeExtensions.just-perfection
gnomeExtensions.arc-menu
gnomeExtensions.appindicator
];
environment.systemPackages = with pkgs; [
killall
usbutils
pavucontrol
ffmpeg
openssl
qmk-udev-rules
];
# Programs with extra configuration
programs.steam = {
@@ -66,23 +19,10 @@ in
remotePlay.openFirewall = true;
dedicatedServer.openFirewall = true;
localNetworkGameTransfers.openFirewall = true;
extraPackages = [ pkgs.jdk ];
};
programs.java.enable = true;
programs.steam.extraPackages = [ pkgs.jdk ];
programs.obs-studio.enable = true;
programs.git = {
enable = true;
config = {
user = {
name = "${settings.gitName}";
email = "${settings.gitEmail}";
signingkey = "${settings.gitKey}";
};
gpg.format = "ssh";
commit.gpgsign = true;
};
};
}