153 lines
3.3 KiB
Nix
Executable file
153 lines
3.3 KiB
Nix
Executable file
{
|
|
config,
|
|
pkgs,
|
|
user,
|
|
...
|
|
}:
|
|
|
|
{
|
|
imports = [
|
|
# Include the results of the hardware scan.
|
|
./hardware-configuration.nix
|
|
|
|
# system stuff
|
|
./system/display.nix
|
|
./system/sound.nix
|
|
./system/essentials.nix
|
|
./system/shell.nix
|
|
./system/remap.nix
|
|
./system/ssd.nix
|
|
|
|
# rice and other usefull apps
|
|
./desktop.nix
|
|
|
|
# developing tools
|
|
./dev.nix
|
|
|
|
# music
|
|
./apps/music.nix
|
|
|
|
# communcations apps
|
|
./apps/communication.nix
|
|
|
|
# password manager
|
|
./apps/keepassxc.nix
|
|
|
|
# productivity apps
|
|
./apps/prod.nix
|
|
|
|
# enabling sandboxing and other security measures
|
|
./system/security.nix
|
|
|
|
# file sync
|
|
./apps/syncthing.nix
|
|
|
|
# libreoffice
|
|
./apps/office.nix
|
|
|
|
# node xporter
|
|
#./configs/prometheus.nix
|
|
./configs/neofetch.nix
|
|
./configs/logseq.nix
|
|
./configs/i3.nix
|
|
./configs/rofi.nix
|
|
./configs/picom.nix
|
|
./configs/polybar.nix
|
|
./configs/btop.nix
|
|
./configs/dunst.nix
|
|
./configs/firefox.nix
|
|
./configs/element.nix
|
|
./configs/nvim.nix
|
|
./configs/tmux.nix
|
|
|
|
# terminal
|
|
#./configs/st.nix # too minimal, most things dont work without a million tweaks
|
|
#./configs/kitty.nix # uses their own stupid xterm extension...
|
|
./configs/alacritty.nix # just perfect, tho too much gpu usage
|
|
|
|
# apps
|
|
./apps/graphics.nix
|
|
|
|
];
|
|
|
|
# adding nur
|
|
nixpkgs.config.packageOverrides = pkgs: {
|
|
nur = import (builtins.fetchTarball "https://github.com/nix-community/NUR/archive/master.tar.gz") {
|
|
inherit pkgs;
|
|
};
|
|
};
|
|
|
|
# adding flake support
|
|
nix.settings.experimental-features = [
|
|
"nix-command"
|
|
"flakes"
|
|
];
|
|
|
|
nixpkgs.config.permittedInsecurePackages = [
|
|
"electron-27.3.11"
|
|
];
|
|
|
|
home-manager.users."${user}" =
|
|
{ ... }:
|
|
{
|
|
home.stateVersion = "24.11";
|
|
};
|
|
|
|
# Bootloader.
|
|
boot.loader.grub.enable = true;
|
|
boot.loader.grub.device = "/dev/sda";
|
|
boot.loader.grub.useOSProber = true;
|
|
|
|
boot.initrd.luks.devices."luks-66da6971-2a98-4277-b74c-a8cecb5e3bd3".device =
|
|
"/dev/disk/by-uuid/66da6971-2a98-4277-b74c-a8cecb5e3bd3";
|
|
# Setup keyfile
|
|
boot.initrd.secrets = {
|
|
"/crypto_keyfile.bin" = null;
|
|
};
|
|
|
|
boot.loader.grub.enableCryptodisk = true;
|
|
|
|
boot.initrd.luks.devices."luks-bd115bee-c7d6-4c9e-8e3b-e32c39edb80f".keyFile =
|
|
"/crypto_keyfile.bin";
|
|
boot.initrd.luks.devices."luks-66da6971-2a98-4277-b74c-a8cecb5e3bd3".keyFile =
|
|
"/crypto_keyfile.bin";
|
|
|
|
networking.hostName = "nixos"; # Define your hostname.
|
|
|
|
# Enable networking
|
|
networking.networkmanager.enable = true;
|
|
|
|
# Set your time zone.
|
|
time.timeZone = "Europe/Budapest";
|
|
|
|
# Select internationalisation properties.
|
|
i18n.defaultLocale = "en_US.UTF-8";
|
|
|
|
i18n.extraLocaleSettings = {
|
|
LC_ADDRESS = "hu_HU.UTF-8";
|
|
LC_IDENTIFICATION = "hu_HU.UTF-8";
|
|
LC_MEASUREMENT = "hu_HU.UTF-8";
|
|
LC_MONETARY = "hu_HU.UTF-8";
|
|
LC_NAME = "hu_HU.UTF-8";
|
|
LC_NUMERIC = "hu_HU.UTF-8";
|
|
LC_PAPER = "hu_HU.UTF-8";
|
|
LC_TELEPHONE = "hu_HU.UTF-8";
|
|
LC_TIME = "hu_HU.UTF-8";
|
|
};
|
|
|
|
users.users.peach = {
|
|
isNormalUser = true;
|
|
description = "peach";
|
|
extraGroups = [
|
|
"networkmanager"
|
|
"wheel"
|
|
"audio"
|
|
"docker"
|
|
];
|
|
};
|
|
|
|
nixpkgs.config.allowUnfree = true;
|
|
nix.settings.auto-optimise-store = true;
|
|
system.stateVersion = "24.11";
|
|
}
|