Refactoring configuration
This commit is contained in:
parent
09e3cc520a
commit
a87c269dfc
9 changed files with 336 additions and 287 deletions
102
system.nix
Normal file
102
system.nix
Normal file
|
|
@ -0,0 +1,102 @@
|
|||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
# OS Configuration
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.systemd-boot.extraEntries = {
|
||||
"fedora.conf" = ''
|
||||
title Fedora
|
||||
efi /EFI/fedora/grubx64.efi
|
||||
'';
|
||||
};
|
||||
boot.loader.systemd-boot.configurationLimit = 10;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.plymouth.enable = true;
|
||||
|
||||
boot.supportedFilesystems = [ "ntfs" ];
|
||||
|
||||
fileSystems = {
|
||||
"/".options = [ "compress=zstd:1" ];
|
||||
"/home".options = [ "compress=zstd:1" ];
|
||||
"/nix".options = [ "compress=zstd:1" "noatime" ];
|
||||
};
|
||||
|
||||
zramSwap.enable = true;
|
||||
|
||||
# Firmware
|
||||
services.fwupd.enable = true;
|
||||
services.fprintd.enable = true;
|
||||
|
||||
# Time
|
||||
time.timeZone = "Europe/Paris";
|
||||
|
||||
# Keyboard & Touchpad
|
||||
i18n.defaultLocale = "fr_FR.UTF-8";
|
||||
console = {
|
||||
font = "Lat2-Terminus16";
|
||||
#keyMap = "fr";
|
||||
useXkbConfig = true;
|
||||
};
|
||||
|
||||
services.xserver.layout = "fr";
|
||||
services.xserver.xkbVariant = "oss";
|
||||
|
||||
services.xserver.libinput.enable = true;
|
||||
|
||||
# Printing
|
||||
services.printing.enable = true;
|
||||
services.avahi.enable = true;
|
||||
services.avahi.nssmdns = true;
|
||||
services.avahi.openFirewall = true;
|
||||
|
||||
# Shell
|
||||
programs.fish.enable = true;
|
||||
programs.fish.promptInit = ''
|
||||
any-nix-shell fish --info-right | source
|
||||
'';
|
||||
environment.shells = with pkgs; [ fish ];
|
||||
|
||||
# Graphics
|
||||
services.xserver.enable = true;
|
||||
programs.xwayland.enable = true;
|
||||
|
||||
services.xserver.displayManager.gdm.enable = true;
|
||||
services.xserver.desktopManager.gnome.enable = true;
|
||||
|
||||
programs.dconf.enable = true;
|
||||
|
||||
services.flatpak.enable = true;
|
||||
|
||||
services.joycond.enable = true;
|
||||
|
||||
# Sound
|
||||
sound.enable = false;
|
||||
hardware.pulseaudio.enable = false;
|
||||
security.rtkit.enable = true;
|
||||
services.pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
pulse.enable = true;
|
||||
#jack.enable = true;
|
||||
};
|
||||
|
||||
# Documentation
|
||||
documentation.enable = true;
|
||||
documentation.man.enable = true;
|
||||
documentation.dev.enable = true;
|
||||
documentation.nixos.enable = true;
|
||||
|
||||
# Virtualisation
|
||||
virtualisation.libvirtd.enable = true;
|
||||
|
||||
# Containers
|
||||
virtualisation.containers.enable = true;
|
||||
virtualisation.podman = {
|
||||
enable = true;
|
||||
dockerCompat = true;
|
||||
defaultNetwork.settings.dns_enabled = true;
|
||||
extraPackages = [ pkgs.zfs ];
|
||||
enableNvidia = true;
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue