nix-configs/hosts/monosodium-glutamate-g/configuration.nix

153 lines
3.6 KiB
Nix
Raw Normal View History

2022-08-02 07:55:12 +00:00
# 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).
2023-05-14 10:07:54 +00:00
{ pkgs, ... }:
2022-08-02 07:55:12 +00:00
{
imports = [
./hardware-configuration.nix
2023-04-22 11:10:34 +00:00
../../common.nix
../../modules
2022-08-02 07:55:12 +00:00
];
2023-09-25 17:24:42 +00:00
# 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;
# });
# })
# ];
# };
2022-08-12 10:14:32 +00:00
jade = {
flatpak.enable = true;
2023-02-14 19:42:51 +00:00
desktop = {
enable = true;
compositing.enable = true;
creative.enable = true;
syncthing.enable = true;
kdeconnect.enable = true;
cloud.enable = true;
social.enable = true;
gaming.enable = true;
2023-03-11 13:41:01 +00:00
ios-compat.enable = true;
mail.enable = true;
2023-02-14 19:42:51 +00:00
};
2023-05-14 10:07:54 +00:00
zellij.enable = true;
2022-09-02 06:40:33 +00:00
terminal.enable = true;
2023-05-14 10:07:54 +00:00
helix.enable = true;
2022-09-02 15:07:30 +00:00
zsh.enable = true;
2022-08-12 10:14:32 +00:00
};
2023-05-14 10:07:54 +00:00
boot = {
loader = {
2022-08-12 10:14:32 +00:00
2023-05-14 10:07:54 +00:00
# Use the systemd-boot EFI boot loader.
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
};
# latest linux kernel
#boot.kernelPackages = pkgs.linuxPackages_latest;
#boot.kernelPackages = pkgs.linux_zen_xeniafied;
2023-09-25 17:47:34 +00:00
kernelPackages = pkgs.linuxPackages_zen;
2023-09-25 17:24:42 +00:00
# boot.kernelPatches = [
# {
# name = "fomx";
# patch = ../other/0001-fomx.patch;
# }
# ];
2022-08-02 07:55:12 +00:00
2023-05-14 10:07:54 +00:00
binfmt.emulatedSystems = [ "aarch64-linux" ];
};
2023-05-14 10:07:54 +00:00
networking.hostName = "monosodium-glutamate-g";
services = {
2023-05-12 14:24:22 +00:00
2023-05-14 10:07:54 +00:00
# monitor control
ddccontrol.enable = true;
xserver = {
2022-08-02 07:55:12 +00:00
2023-05-14 10:07:54 +00:00
layout = "us";
xkbVariant = "altgr-intl";
enable = true;
};
2022-08-02 07:55:12 +00:00
2023-05-14 10:07:54 +00:00
openssh.settings.PermitRootLogin = "without-password";
2022-08-02 07:55:12 +00:00
2023-05-14 10:07:54 +00:00
blueman.enable = true;
2023-01-08 21:22:48 +00:00
2023-05-14 10:07:54 +00:00
gnome.gnome-keyring.enable = true;
};
hardware = {
bluetooth.enable = true;
keyboard.uhk.enable = true;
enableRedistributableFirmware = true;
};
2022-08-02 07:55:12 +00:00
# missing: menu-qalc picom-jonaburg
environment.systemPackages = with pkgs; [
# TODO: clean up.
libGL
2023-03-20 22:40:08 +00:00
libreoffice-fresh
wireshark
2023-05-25 07:03:43 +00:00
awesomebump
zenstates zenmonitor
nvtop-amd
radeontop
rgp
2023-05-12 14:24:22 +00:00
tea
2023-05-25 07:03:43 +00:00
blender-hip
2022-08-02 07:55:12 +00:00
];
2023-05-14 10:07:54 +00:00
programs = {
corectrl.enable = true;
wireshark.enable = true;
seahorse.enable = true;
};
2022-08-02 07:55:12 +00:00
environment.pathsToLink = [
"/share/nix-direnv"
];
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;
2022-12-13 17:55:21 +00:00
2023-02-26 20:47:04 +00:00
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
'';
};
};
2022-08-02 07:55:12 +00:00
# release channel
system.stateVersion = "22.05"; # Did you read the comment?
}
2022-09-02 06:40:33 +00:00
2022-09-02 15:07:30 +00:00