135 lines
3.5 KiB
Nix
135 lines
3.5 KiB
Nix
# 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.kernelPackages = pkgs.linuxPackages_zen;
|
||
#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?
|
||
}
|
||
|
||
|
||
|