added laptop

This commit is contained in:
Charlie Root 2024-05-23 11:38:43 +02:00
commit a7ff191561
12 changed files with 263 additions and 4 deletions

View file

@ -2,16 +2,29 @@
inherit (inputs) self; inherit (inputs) self;
inherit (self) lib; inherit (self) lib;
in { in {
mars = lib.nixosSystem { temperance = lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
specialArgs = {inherit lib inputs self;}; specialArgs = {inherit lib inputs self;};
modules = [ modules = [
inputs.stylix.nixosModules.stylix ./vali/temperance
./vali/mars
../modules ../modules
inputs.home-manager.nixosModules.home-manager inputs.home-manager.nixosModules.home-manager
inputs.agenix.nixosModules.default inputs.agenix.nixosModules.default
inputs.stylix.nixosModules.stylix
inputs.nixvim.nixosModules.nixvim inputs.nixvim.nixosModules.nixvim
]; ];
}; };
hermit = lib.nixosSystem {
system = "x86_64-linux";
specialArgs = {inherit lib inputs self;};
modules = [
./vali/hermit
../modules
inputs.home-manager.nixosModules.home-manager
inputs.agenix.nixosModules.default
inputs.stylix.nixosModules.stylix
inputs.nixvim.nixosModules.nixvim
];
};
} }

View file

@ -0,0 +1,87 @@
{pkgs, ...}: {
# allow unfree packages
nixpkgs.config.allowUnfree = true;
# Time Zone
time.timeZone = "Europe/Zurich";
# Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8";
console.keyMap = "de";
nix = {
settings = {
substituters = ["https://hyprland.cachix.org"];
trusted-public-keys = [
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
];
# enable flakes
experimental-features = ["nix-command" "flakes"];
# reduce file size used & automatic garbage collector
auto-optimise-store = true;
};
};
security.sudo.package = pkgs.sudo.override {withInsults = true;};
security.polkit.enable = true;
programs.kdeconnect.enable = true;
programs.dconf.enable = true;
# boot.kernelModules = [ "v4l2loopback" ];
boot.kernelPackages = pkgs.linuxPackages_zen;
# boot.extraModulePackages = [ pkgs.linuxPackages.v4l2loopback ];
# services.picom.enable = true;
services.emacs.enable = true;
modules = {
other = {
system = {
hostname = "hermit";
username = "vali";
gitPath = "/home/vali/repos/nichts";
};
home-manager = {
enable = true;
enableDirenv = true;
};
};
wms = {
wayland = {
enable = true;
hyprland.enable = true;
};
};
programs = {
vesktop.enable = true;
ssh.enable = true;
btop.enable = true;
mpv.enable = true;
kitty.enable = true;
newsboat.enable = true;
foot.enable = true;
fish.enable = true;
stylix.enable = true;
nh.enable = true;
waybar.enable = true;
spicetify.enable = true;
schizofox.enable = true;
anyrun.enable = true;
};
editors = {
emacs = {
enable = false;
doom.enable = false;
};
helix.enable = false;
kakoune.enable = false;
nixvim.enable = true;
};
services = {
pipewire.enable = true;
dunst.enable = true;
};
themes = {
gtk = {enable = true;};
qt = {
enable = false;
package = pkgs.kde-gruvbox;
name = "Gruvbox-Dark";
};
};
};
system.stateVersion = "23.11";
}

View file

@ -0,0 +1,9 @@
_: {
imports = [
../../../options/boot/grub-boot.nix
../../../options/desktop/fonts.nix
../../../options/common/networking.nix
../../../options/desktop/monitors.nix
../../../overlay.nix
];
}

View file

@ -0,0 +1,99 @@
{
inputs,
pkgs,
...
}: let
fenix = inputs.fenix.packages.${pkgs.system};
nixpkgs-wayland = inputs.nixpkgs-wayland.packages.${pkgs.system};
in {
environment.systemPackages = with pkgs; [
alejandra
alsa-utils
asciinema
bibata-cursors
blanket
cmake
difftastic
dig
easyeffects
element-desktop
evince
eza
fastfetch
feh
ffmpeg-full
fftw
grimblast
gcc
gdb
gnumake
grc
grimblast
git
helvum
httpie
imagemagick
img2pdf
imv
keepassxc
lazygit
libtool
links2
mars-mips
gnome.nautilus
ncmpcpp
neofetch
neovim
networkmanagerapplet
nextcloud-client
nicotine-plus
nil
nitch
nixfmt
nixpkgs-wayland.swww
nmap
notesnook
obsidian
onlyoffice-bin
pamixer
pavucontrol
pdfarranger
pfetch
pidgin
playerctl
polkit
python3
qbittorrent
ripgrep
rustdesk
scc
scummvm
sherlock
signal-desktop-beta
smartmontools
strawberry
telegram-desktop
texliveFull
tldr
thunderbird
tor-browser-bundle-bin
trash-cli
tree
typst
unzip
util-linux
v4l-utils
ventoy-full
vlc
weechat
wget
wireguard-tools
wl-clipboard
xdg-utils
xournalpp
yt-dlp
zapzap
zip
zoxide
];
}

View file

@ -30,7 +30,7 @@
modules = { modules = {
other = { other = {
system = { system = {
hostname = "mars"; hostname = "temperance";
username = "vali"; username = "vali";
gitPath = "/home/vali/repos/nichts"; gitPath = "/home/vali/repos/nichts";
}; };

View file

@ -0,0 +1,8 @@
_: {
imports = [
./configuration.nix
./programs.nix
./hardware-configuration.nix
./profile.nix
];
}

View file

@ -0,0 +1,42 @@
{
config,
lib,
pkgs,
modulesPath,
...
}: {
imports = [(modulesPath + "/installer/scan/not-detected.nix")];
boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "nvme" "usbhid" "sd_mod"];
boot.initrd.kernelModules = [];
boot.kernelModules = ["kvm-intel"];
boot.extraModulePackages = [];
fileSystems."/" = {
device = "/dev/disk/by-uuid/0423508a-6906-4872-baeb-2b1e6bd017a4";
fsType = "ext4";
options = ["noatime" "nodiratime" "discard"];
};
boot.initrd.luks.devices."luks-c03fc486-bdd7-46bf-ac2f-1a55fe1abd6f".device = "/dev/disk/by-uuid/c03fc486-bdd7-46bf-ac2f-1a55fe1abd6f";
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/D299-5174";
fsType = "vfat";
};
swapDevices = [
# { device = "/dev/disk/by-uuid/bc68b3b5-1b58-4d8c-be8d-b06bbc4b6da7"; }
];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp4s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode =
lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View file

@ -52,6 +52,7 @@ in {
# Monitor config # Monitor config
monitor = [ monitor = [
"eDP-1,1920x1080,0x0,1"
"DP-2,1920x1080,0x0,1" "DP-2,1920x1080,0x0,1"
"HDMI-A-2,1920x1080,1920x0,1" "HDMI-A-2,1920x1080,1920x0,1"
"HDMI-A-1,1920x1080,3840x0,1" "HDMI-A-1,1920x1080,3840x0,1"