.nix/configuration.nix
2024-08-01 17:34:17 +02:00

159 lines
3.4 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help).
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
# Custom modules
./system/boot.nix
./system/hardware.nix
./system/network.nix
./system/programs.nix
./system/services.nix
./system/systemd.nix
./system/labwc.nix
./system/xfce.nix
];
security = {
polkit.enable = true;
rtkit.enable = true;
};
# Set your time zone.
time.timeZone = "Europe/Rome";
# Select internationalisation properties.
i18n = {
defaultLocale = "en_US.UTF-8";
extraLocaleSettings = {
LC_ADDRESS = "el_GR.UTF-8";
LC_IDENTIFICATION = "el_GR.UTF-8";
LC_MEASUREMENT = "el_GR.UTF-8";
LC_MONETARY = "el_GR.UTF-8";
LC_NAME = "el_GR.UTF-8";
LC_NUMERIC = "el_GR.UTF-8";
LC_PAPER = "el_GR.UTF-8";
LC_TELEPHONE = "el_GR.UTF-8";
LC_TIME = "el_GR.UTF-8";
};
};
users = {
defaultUserShell = pkgs.zsh;
# Define a user account. Don't forget to set a password with passwd.
users.aethrvmn = {
isNormalUser = true;
description = "Vasilis";
password = "gang";
extraGroups = [ "networkmanager" "wheel" ];
};
};
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
users.aethrvmn = import ./vasilis.nix;
};
# Flakes setup
nix.settings.experimental-features = [ "nix-command" "flakes" ];
# Allow unfree packages
nixpkgs = {
config.allowUnfree = true;
};
virtualisation = {
docker = {
enable = true;
enableOnBoot = true;
};
};
# Garbage collection
nix.gc = {
automatic = true;
options = "--delete-older-than 7d";
dates = "weekly";
};
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = with pkgs; [
alacritty
alsa-utils
bat
brightnessctl
cava
gcc
glib
glibc
nim
nimble
openblas
openblasCompat
playerctl
poetry
python311Full
python311Packages.stdenv
udisks
linuxPackages.v4l2loopback
usbutils
v4l-utils
ventoy
wget
wineWowPackages.waylandFull
xarchiver
zlib
];
# Fonts
fonts.packages = with pkgs; [
corefonts
dejavu_fonts
font-awesome
liberation_ttf
meslo-lgs-nf
noto-fonts
noto-fonts-cjk
noto-fonts-emoji
vistafonts
];
# Env settings
environment = {
sessionVariables = {
NIXOS_OZONE_WL = "1";
};
etc = {
"1password/custom_allowed_browsers" = {
text = ''
firefox
'';
};
};
};
qt = {
enable = true;
platformTheme = "gnome";
style = "adwaita-dark";
};
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
# on your system were taken. Its perfectly fine and recommended to leave
# this value at the release version of the first install of this system.
# Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "23.11"; # Did you read the comment?
}