HomeManager
This commit is contained in:
@@ -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
82
modules/home-manager.nix
Normal 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;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -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;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user