Compare commits

..

No commits in common. "20fdb6abdd3b5f931240ec75691b1442167d1099" and "0bc924eef426a828254c0dfb7aa90c6f56af6134" have entirely different histories.

2 changed files with 42 additions and 56 deletions

View file

@ -11,8 +11,6 @@
inputs.home-manager.nixosModules.default inputs.home-manager.nixosModules.default
]; ];
nix.settings.experimental-features = [ "nix-command" "flakes" ];
# Bootloader. # Bootloader.
boot.loader.grub.enable = true; boot.loader.grub.enable = true;
boot.loader.grub.device = "/dev/sda"; boot.loader.grub.device = "/dev/sda";
@ -25,6 +23,8 @@
# networking.proxy.default = "http://user:password@proxy:port/"; # networking.proxy.default = "http://user:password@proxy:port/";
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
nix.settings.experimental-features = [ "nix-command" "flakes" ];
# Enable networking # Enable networking
networking.networkmanager.enable = true; networking.networkmanager.enable = true;
@ -69,7 +69,11 @@
alsa.enable = true; alsa.enable = true;
alsa.support32Bit = true; alsa.support32Bit = true;
pulse.enable = true; pulse.enable = true;
# If you want to use JACK applications, uncomment this
#jack.enable = true; #jack.enable = true;
# use the example session manager (no others are packaged yet so this is enabled by default,
# no need to redefine it in your config for now)
#media-session.enable = true; #media-session.enable = true;
}; };
@ -81,9 +85,16 @@
isNormalUser = true; isNormalUser = true;
description = "sid"; description = "sid";
extraGroups = [ "networkmanager" "wheel" ]; extraGroups = [ "networkmanager" "wheel" ];
packages = with pkgs; []; packages = with pkgs; [
alacritty
git
kdePackages.dolphin
];
}; };
# Install firefox.
programs.firefox.enable = true;
# Home Manager # Home Manager
home-manager = { home-manager = {
extraSpecialArgs = { inherit inputs; }; extraSpecialArgs = { inherit inputs; };
@ -99,41 +110,8 @@
# $ nix search wget # $ nix search wget
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
vim vim
alacritty
git
fish
tailscale
fastfetch
librewolf
signal-desktop
localsend
vscodium
vlc
gimp
libreoffice-qt6-fresh
# Only related to this laptop - above to be moved to a more common config when ive added more hosts
kdePackages.dolphin
prismlauncher
calibre
thunderbird
ledger-live-desktop
nodejs_22
pnpm
]; ];
# Custom services
services.tailscale.enable = true;
programs.bash = {
interactiveShellInit = ''
if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "fish" && -z ''${BASH_EXECUTION_STRING} ]]
then
shopt -q login_shell && LOGIN_OPTION='--login' || LOGIN_OPTION=""
exec ${pkgs.fish}/bin/fish $LOGIN_OPTION
fi
'';
};
# Some programs need SUID wrappers, can be configured further or are # Some programs need SUID wrappers, can be configured further or are
# started in user sessions. # started in user sessions.
# programs.mtr.enable = true; # programs.mtr.enable = true;
@ -160,4 +138,5 @@
# Before changing this value read the documentation for this option # Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "25.05"; # Did you read the comment? system.stateVersion = "25.05"; # Did you read the comment?
} }

View file

@ -25,6 +25,16 @@
# Home Manager is pretty good at managing dotfiles. The primary way to manage # Home Manager is pretty good at managing dotfiles. The primary way to manage
# plain files is through 'home.file'. # plain files is through 'home.file'.
home.file = { home.file = {
# # Building this configuration will create a copy of 'dotfiles/screenrc' in
# # the Nix store. Activating the configuration will then make '~/.screenrc' a
# # symlink to the Nix store copy.
# ".screenrc".source = dotfiles/screenrc;
# # You can also set the file content immediately.
# ".gradle/gradle.properties".text = ''
# org.gradle.console=verbose
# org.gradle.daemon.idletimeout=3600000
# '';
}; };
# Home Manager can also manage your environment variables through # Home Manager can also manage your environment variables through
@ -32,6 +42,17 @@
# shell provided by Home Manager. If you don't want to manage your shell # shell provided by Home Manager. If you don't want to manage your shell
# through Home Manager then you have to manually source 'hm-session-vars.sh' # through Home Manager then you have to manually source 'hm-session-vars.sh'
# located at either # located at either
#
# ~/.nix-profile/etc/profile.d/hm-session-vars.sh
#
# or
#
# ~/.local/state/nix/profiles/profile/etc/profile.d/hm-session-vars.sh
#
# or
#
# /etc/profiles/per-user/sid/etc/profile.d/hm-session-vars.sh
#
home.sessionVariables = { home.sessionVariables = {
# EDITOR = "emacs"; # EDITOR = "emacs";
}; };
@ -39,28 +60,14 @@
# Let Home Manager install and manage itself. # Let Home Manager install and manage itself.
programs.home-manager.enable = true; programs.home-manager.enable = true;
programs = {
# Nixhelper # Nixhelper
nh = { programs.nh = {
enable = true; enable = true;
clean.enable = true; clean.enable = true;
clean.extraArgs = "--keep-since 4d --keep 3"; clean.extraArgs = "--keep-since 4d --keep 3";
flake = "../../flake.nix"; flake = "../../flake.nix";
}; };
# Vim config
vim = {
enable = true;
settings = {
tabstop = 2;
shiftwidth = 2;
};
};
# Enable fish
fish.enable = true;
};
# GPG setup # GPG setup
services.gpg-agent = { services.gpg-agent = {
enable = true; enable = true;