Files
nixos-config/modules/base.nix

55 lines
1.7 KiB
Nix

{ config, pkgs, inputs, ... }:
{
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
# boot.kernelPackages = pkgs.linuxPackages_latest;
networking.networkmanager.enable = true;
networking.networkmanager.wifi.backend = "iwd";
networking.wireless.iwd.enable = true;
time.timeZone = "Europe/Oslo";
i18n.defaultLocale = "en_US.UTF-8";
services.xserver.xkb = { layout = "us"; variant = ""; };
users.users.fredrikr = {
isNormalUser = true;
description = "Fredrik Robertsen";
extraGroups = [ "networkmanager" "wheel" ];
shell = pkgs.nushell;
};
nixpkgs.config.allowUnfree = true;
nix.settings.experimental-features = [ "nix-command" "flakes" ];
environment = {
systemPackages = with pkgs; [ vim ripgrep xdg-utils ];
shells = with pkgs; [ nushell bash ];
};
programs.gnupg.agent = { enable = true; enableSSHSupport = true; };
programs.bash.interactiveShellInit = ''
if [ "$TERM" = "dumb" ]; then exec ${pkgs.bash}; fi
if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "nu" && -z ''${BASH_EXECUTION_STRING} ]]; then
shopt -q login_shell && LOGIN_OPTION='--login' || LOGIN_OPTION=""
exec ${pkgs.nushell}/bin/nu $LOGIN_OPTION
fi
'';
services.openssh.enable = true;
services.gnome.gnome-keyring.enable = true;
hardware.bluetooth.enable = true;
programs.nix-ld.enable = true;
system.stateVersion = "25.11"; # set per machine
nix.settings.substituters = [
"https://cache.nixos.org"
"https://nix-community.cachix.org"
];
nix.settings.trusted-public-keys = [
"cache.nixos.org-1:6nchdd59x431o0gwypbmraurkbj16zpmqfgspcdshjy="
"nix-community.cachix.org-1:mb9fsh9qf2dcimdsuo8zy7bkq5cx+/rkcwyvrcyg3fs="
];
}