# 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’). { inputs, config, pkgs, lib, ... }: { imports = [ ./hardware-configuration.nix ../common.nix ../modules ]; nixpkgs = { overlays = [ (self: super: { linux_zen_xeniafied = pkgs.linuxPackagesFor (pkgs.linuxKernel.kernels.linux_zen.override { structuredExtraConfig = with lib.kernel; { #"FB" = yes; #"FRAMEBUFFER_CONSOLE" = yes; #"VGA_CONSOLE" = yes; #"VIDEO_SELECT" = yes; LOGO = lib.mkForce yes; LOGO_LINUX_CLUT224 = yes; }; ignoreConfigErrors = true; }); }) ]; }; jade = { flatpak.enable = true; desktop = { enable = true; compositing.enable = true; creative.enable = true; syncthing.enable = true; kdeconnect.enable = true; cloud.enable = true; social.enable = true; gaming.enable = true; ios-compat.enable = true; mail.enable = true; }; terminal.enable = true; neovim.enable = true; zsh.enable = true; }; # monitor control services.ddccontrol.enable = true; # Use the systemd-boot EFI boot loader. boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true; # latest linux kernel #boot.kernelPackages = pkgs.linuxPackages_latest; boot.kernelPackages = pkgs.linux_zen_xeniafied; boot.kernelPatches = [ { name = "fomx"; patch = ../other/0001-fomx.patch; } ]; programs.corectrl.enable = true; networking.hostName = "monosodium-glutamate-g"; services.xserver.layout = "us"; services.xserver.xkbVariant = "altgr-intl"; services.openssh.settings.PermitRootLogin = "without-password"; hardware.bluetooth.enable = true; hardware.keyboard.uhk.enable = true; hardware.enableRedistributableFirmware = true; # missing: menu-qalc picom-jonaburg environment.systemPackages = with pkgs; [ # TODO: clean up. libGL libreoffice-fresh wireshark zenstates zenmonitor nvtop-amd radeontop rgp ]; programs.wireshark.enable = true; environment.pathsToLink = [ "/share/nix-direnv" ]; services.blueman.enable = true; services.gnome.gnome-keyring.enable = true; programs.seahorse.enable = true; security.pam.services.jade.enableGnomeKeyring = true; # Copy the NixOS configuration file and link it from the resulting system # (/run/current-system/configuration.nix). This is useful in case you # accidentally delete configuration.nix. # system.copySystemConfiguration = true; # networking.firewall.allowedTCPPorts = [ 4713 ]; systemd.services."NetworkManager-wait-online".enable = false; services.xserver.enable = true; systemd.services = { create-swapfile = { serviceConfig.Type = "oneshot"; wantedBy = [ "swap-swapfile.swap" ]; script = '' swapfile="/swap/swapfile" if [[ -f "$swapfile" ]]; then echo "Swap file $swapfile already exists, taking no action" else echo "Setting up swap file $swapfile" ${pkgs.coreutils}/bin/truncate -s 0 "$swapfile" ${pkgs.e2fsprogs}/bin/chattr +C "$swapfile" fi ''; }; }; # release channel system.stateVersion = "22.05"; # Did you read the comment? }