nix-configs/hosts/potatobook-g/configuration.nix

183 lines
4.3 KiB
Nix
Raw Normal View History

2023-05-22 19:01:27 +02:00
{ pkgs, ... }:
{
2022-12-13 18:57:27 +01:00
nix.settings = {
trusted-substituters = [
"https://t2linux.cachix.org"
];
trusted-public-keys = [
"t2linux.cachix.org-1:P733c5Gt1qTcxsm+Bae0renWnT8OLs0u9+yfaK2Bejw="
];
};
2022-08-31 22:49:48 +02:00
imports = [
2022-09-01 01:35:08 +02:00
./hardware-configuration.nix
2023-04-22 13:10:34 +02:00
../../common.nix
../../modules
#inputs.mms.module
2022-08-31 22:49:48 +02: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;
#});
#})
#];
#};
#boot.kernelPatches = [
#{
#name = "fomx";
#patch = ../other/0001-fomx.patch;
#}
#];
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
2022-08-31 22:49:48 +02:00
jade = {
flatpak.enable = true;
2023-02-13 12:54:21 +01:00
desktop = {
enable = true;
compositing.enable = true;
creative.enable = true;
syncthing.enable = true;
kdeconnect.enable = true;
cloud.enable = true;
social.enable = true;
2023-02-26 21:50:52 +01:00
mail.enable = true;
2023-02-13 12:54:21 +01:00
};
helix.enable = true;
2023-05-22 19:01:27 +02:00
zellij.enable = true;
2022-09-01 19:48:22 +02:00
terminal.enable = true;
2022-09-02 17:07:30 +02:00
zsh.enable = true;
2022-08-31 22:49:48 +02:00
};
2022-09-02 10:33:55 +02:00
fileSystems = {
"/".options = [ "compress=zstd:3" ];
"/home".options = [ "compress=zstd:3" ];
"/nix".options = [ "compress=zstd:3" "noatime" ];
#"/swap".options = [ "noatime" ];
};
2022-09-01 09:03:08 +02:00
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
2022-09-01 01:35:08 +02:00
2022-09-01 09:03:08 +02:00
networking.networkmanager.enable = true;
2022-08-31 22:49:48 +02:00
networking.hostName = "potatobook-g";
2022-09-01 19:48:22 +02:00
services.xserver = {
resolutions = [ { x = 1920; y = 1200; } ];
# dpi = 180;
layout = "us";
xkbVariant = "altgr-intl";
};
services.autorandr = {
enable = true;
profiles = {
"default" = {
config = {
2022-09-26 12:57:45 +02:00
"eDP-1" = {
enable = true;
mode = "1920x1200";
};
};
2022-09-01 19:48:22 +02:00
};
};
};
2023-04-10 17:54:39 +02:00
hardware.keyboard.uhk.enable = true;
hardware.enableRedistributableFirmware = true;
2022-08-31 22:49:48 +02:00
2022-09-01 19:48:22 +02:00
2022-08-31 22:49:48 +02:00
environment.systemPackages = with pkgs; [
2023-04-10 17:54:39 +02:00
android-tools
2022-08-31 22:49:48 +02:00
];
environment.pathsToLink = [
"/share/nix-direnv"
];
services.blueman.enable = true;
2023-04-10 17:54:39 +02:00
programs.adb.enable = true;
2022-08-31 22:49:48 +02:00
services.gnome.gnome-keyring.enable = true;
programs.seahorse.enable = true;
security.pam.services.jade.enableGnomeKeyring = true;
systemd.services."NetworkManager-wait-online".enable = false;
2023-05-22 19:01:27 +02:00
services.pixiecore =
let
nixpkgs = builtins.getFlake "nixpkgs/nixos-unstable";
sys = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
({config, pkgs, lib, modulesPath, ...}: {
imports = [
(modulesPath + "/installer/netboot/netboot-base.nix")
];
services.getty.autologinUser = lib.mkForce "root";
console.keyMap = "de";
system.stateVersion = config.system.nixos.release;
environment.systemPackages = with pkgs; [
helix nil git neofetch
];
programs = {
zsh = {
enable = true;
enableCompletion = true;
};
};
})
];
};
build = sys.config.system.build;
in {
enable = true;
openFirewall = true;
kernel = "${build.kernel}/bzImage";
initrd = "${build.netbootRamdisk}/initrd";
cmdLine = "init=${build.toplevel}/init loglevel=4";
};
2022-09-26 19:30:27 +02: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-12-13 18:57:27 +01:00
services.logind.extraConfig = ''
RuntimeDirectorySize=12G
'';
2023-05-22 19:01:27 +02:00
# i rly should put that important big comment back here
system.stateVersion = "22.11"; # Did you read the comment?
2022-08-31 22:49:48 +02:00
}
2022-09-02 17:07:30 +02:00