Sovran_SystemsOS_Light/configuration.nix

186 lines
3.7 KiB
Nix
Raw Normal View History

2023-11-26 21:51:10 -08:00
{ config, pkgs, lib, ... }:
{
imports =
[
./modules/modules.nix
];
# Bootloader.
2023-12-07 17:45:07 -08:00
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
2023-11-26 21:51:10 -08:00
boot.kernelPackages = pkgs.linuxPackages_latest;
2023-12-09 11:09:00 -08:00
services.fwupd.enable = true;
2023-12-16 19:08:59 -08:00
nix.settings.experimental-features = [ "nix-command" "flakes" ];
2023-11-26 21:51:10 -08:00
networking.hostName = "nixos"; # Define your hostname.
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
# Enable networking
networking.networkmanager.enable = true;
# Set your time zone.
time.timeZone = "America/Los_Angeles";
# Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8";
# Enable the X11 windowing system.
services.xserver.enable = true;
# Enable the GNOME Desktop Environment.
services.xserver.displayManager.gdm.enable = true;
services.xserver.desktopManager.gnome.enable = true;
# Fix the GNOME Desktop Environment Performance
nixpkgs.config.allowAliases = false;
nixpkgs.overlays = [
# GNOME 46: triple-buffering-v4-46
(final: prev: {
gnome = prev.gnome.overrideScope (gnomeFinal: gnomePrev: {
mutter = gnomePrev.mutter.overrideAttrs (old: {
src = pkgs.fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "vanvugt";
repo = "mutter";
rev = "triple-buffering-v4-46";
hash = "sha256-nz1Enw1NjxLEF3JUG0qknJgf4328W/VvdMjJmoOEMYs=";
};
});
});
})
];
2023-11-26 21:51:10 -08:00
# Configure keymap in X11
services.xserver.xkb = {
2023-11-26 21:51:10 -08:00
layout = "us";
variant = "";
2023-11-26 21:51:10 -08:00
};
# Enable CUPS to print documents.
services.printing.enable = true;
# Enable sound with pipewire.
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
users.users = {
free = {
isNormalUser = true;
description = "free";
2023-12-01 10:26:37 -08:00
extraGroups = [ "networkmanager" "wheel"];
2023-11-26 21:51:10 -08:00
};
2023-11-27 14:20:43 -08:00
};
2023-11-26 21:51:10 -08:00
# Workaround for GNOME autologin: https://github.com/NixOS/nixpkgs/issues/103746#issuecomment-945091229
systemd.services."getty@tty1".enable = true;
systemd.services."autovt@tty1".enable = true;
# Allow Flatpak
services.flatpak.enable = true;
# Allow unfree packages
nixpkgs.config.allowUnfree = true;
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = with pkgs; [
git
wget
librewolf
fish
htop
gnomeExtensions.dash-to-dock
gnomeExtensions.transparent-top-bar-adjustable-transparency
gnomeExtensions.vitals
gnomeExtensions.pop-shell
gnomeExtensions.just-perfection
gnomeExtensions.appindicator
gnomeExtensions.date-menu-formatter
2024-07-08 09:36:54 -07:00
gnome-tweaks
2023-11-26 21:51:10 -08:00
papirus-icon-theme
ranger
sparrow
bisq-desktop
neofetch
2024-01-01 17:54:58 -08:00
gedit
2023-11-26 21:51:10 -08:00
openssl
pwgen
aspell
aspellDicts.en
lm_sensors
hunspell
hunspellDicts.en_US
ncdu_2
gparted
pv
unzip
parted
screen
2024-07-08 09:36:54 -07:00
zenity
2023-11-26 21:51:10 -08:00
libargon2
2024-07-08 09:36:54 -07:00
gnome-terminal
2023-11-26 21:51:10 -08:00
dig
nextcloud-client
ungoogled-chromium
2023-12-02 08:14:59 -08:00
tor-browser
2023-12-09 12:47:07 -08:00
element-desktop
2024-04-10 16:30:39 -07:00
libreoffice-fresh
2024-05-12 09:56:03 -07:00
firefox
2023-11-26 21:51:10 -08:00
];
services.mullvad-vpn = {
enable = true;
package = pkgs.mullvad-vpn;
};
2023-11-26 21:51:10 -08:00
programs.bash.promptInit = "fish";
programs.fish = {
enable = true;
promptInit = "neofetch";
};
2023-12-03 20:22:05 -08:00
services.openssh = {
enable = true;
settings = {
PasswordAuthentication = false;
KbdInteractiveAuthentication = false;
PermitRootLogin = "yes";
};
};
2023-11-26 21:51:10 -08:00
####### TOR #######
services.tor = {
enable = true;
client.enable = true;
torsocks.enable = true;
};
networking.firewall.enable = true;
2023-12-01 21:56:08 -08:00
2023-11-26 21:51:10 -08:00
####### AUTO COLLECT GARABAGE #######
nix.gc = {
automatic = true;
dates = "weekly";
options = "--delete-older-than 7d";
};
system.stateVersion = "24.05";
}