mirror of
https://github.com/Ascyii/nixos.git
synced 2026-01-01 14:54:26 -05:00
Compare commits
17 Commits
main
...
dc1e64865f
| Author | SHA1 | Date | |
|---|---|---|---|
| dc1e64865f | |||
| 0274f875c4 | |||
| 4cb53654c9 | |||
| b6a66eaa4d | |||
| 2668919af5 | |||
| 725e46b62d | |||
| 1f67fd271e | |||
| d073da6b38 | |||
| 4729da1505 | |||
| 0ada014d4a | |||
| c574bf8e0f | |||
| 4e000023c7 | |||
| a8fdabe1d8 | |||
| 0d1d0018ff | |||
| f7533d4ffa | |||
| 2ea3065c4f | |||
| f8557c66ea |
24
flake.lock
generated
24
flake.lock
generated
@@ -134,11 +134,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1756245065,
|
||||
"narHash": "sha256-aAZNbGcWrVRZgWgkQbkabSGcDVRDMgON4BipMy69gvI=",
|
||||
"lastModified": 1758463745,
|
||||
"narHash": "sha256-uhzsV0Q0I9j2y/rfweWeGif5AWe0MGrgZ/3TjpDYdGA=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "54b2879ce622d44415e727905925e21b8f833a98",
|
||||
"rev": "3b955f5f0a942f9f60cdc9cacb7844335d0f21c3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -449,11 +449,11 @@
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1756469547,
|
||||
"narHash": "sha256-YvtD2E7MYsQ3r7K9K2G7nCslCKMPShoSEAtbjHLtH0k=",
|
||||
"lastModified": 1760139962,
|
||||
"narHash": "sha256-4xggC56Rub3WInz5eD7EZWXuLXpNvJiUPahGtMkwtuc=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "41d292bfc37309790f70f4c120b79280ce40af16",
|
||||
"rev": "7e297ddff44a3cc93673bb38d0374df8d0ad73e4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -479,11 +479,11 @@
|
||||
},
|
||||
"nixpkgs-unstable": {
|
||||
"locked": {
|
||||
"lastModified": 1756542300,
|
||||
"narHash": "sha256-tlOn88coG5fzdyqz6R93SQL5Gpq+m/DsWpekNFhqPQk=",
|
||||
"lastModified": 1760284886,
|
||||
"narHash": "sha256-TK9Kr0BYBQ/1P5kAsnNQhmWWKgmZXwUQr4ZMjCzWf2c=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "d7600c775f877cd87b4f5a831c28aa94137377aa",
|
||||
"rev": "cf3f5c4def3c7b5f1fc012b3d839575dbe552d43",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -612,11 +612,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1754988908,
|
||||
"narHash": "sha256-t+voe2961vCgrzPFtZxha0/kmFSHFobzF00sT8p9h0U=",
|
||||
"lastModified": 1760393368,
|
||||
"narHash": "sha256-8mN3kqyqa2PKY0wwZ2UmMEYMcxvNTwLaOrrDsw6Qi4E=",
|
||||
"owner": "Mic92",
|
||||
"repo": "sops-nix",
|
||||
"rev": "3223c7a92724b5d804e9988c6b447a0d09017d48",
|
||||
"rev": "ab8d56e85b8be14cff9d93735951e30c3e86a437",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
"github:xremap/nix-flake?rev=8001f37b1ffe86e76b62f36afadee2f4acf90e70"; # One commit behind head
|
||||
};
|
||||
|
||||
# Understand what everything does
|
||||
outputs =
|
||||
{ self, nixpkgs, nixpkgs-unstable, sops-nix, home-manager, ... }@inputs:
|
||||
let
|
||||
|
||||
@@ -9,13 +9,8 @@
|
||||
./../../modules/essential.nix
|
||||
./../../modules/common/sops.nix
|
||||
|
||||
# This is buggy right now
|
||||
#./../../modules/services/webdav.nix
|
||||
# Not working right now due to nvidia problems
|
||||
# It worked fine on another machine thats why I am wondering
|
||||
#./../../modules/services/ai.nix
|
||||
|
||||
./../../modules/graphics/workstation.nix
|
||||
./../../modules/graphics/grayscale.nix
|
||||
|
||||
./../../modules/hardware/nvidia.nix
|
||||
./../../modules/hardware/boot.nix
|
||||
@@ -23,30 +18,41 @@
|
||||
];
|
||||
|
||||
networking.hostName = "minoxy";
|
||||
enableCuda = false;
|
||||
|
||||
systemd.targets.sleep.enable = true;
|
||||
systemd.targets.suspend.enable = true;
|
||||
|
||||
programs.ydotool.enable = true;
|
||||
services.input-remapper.enable = true;
|
||||
|
||||
fileSystems."/shared" = {
|
||||
device = "/dev/disk/by-uuid/8CEA-13E3"; # use lsblk -f
|
||||
fsType = "exfat";
|
||||
options = [ "defaults" "uid=1000" "gid=100" "umask=000" ];
|
||||
};
|
||||
|
||||
# Testing
|
||||
#environment.etc."mnt/jousb".source = "/mnt/jousb"; # ensures directory exists
|
||||
#services.udev.extraRules = ''
|
||||
# ACTION=="add", SUBSYSTEM=="block", ENV{ID_FS_LABEL}=="JOUSB", RUN+="${pkgs.mount}/bin/mount /dev/disk/by-label/JOUSB /mnt/jousb"
|
||||
# ACTION=="remove", SUBSYSTEM=="block", ENV{ID_FS_LABEL}=="JOUSB", RUN+="${pkgs.umount}/bin/umount /mnt/jousb"
|
||||
#'';
|
||||
|
||||
virtualisation.docker.enable = true;
|
||||
|
||||
# Add file systems
|
||||
boot.supportedFilesystems = [ "ntfs" "exfat" ];
|
||||
|
||||
# Hide the windows disk in the file explorer
|
||||
services.udev.extraRules = ''
|
||||
# Ignore internal NVMe Windows partition
|
||||
SUBSYSTEM=="block", ENV{ID_FS_UUID}=="A09C8D5E9C8D2FB8", ENV{UDISKS_IGNORE}="1"
|
||||
'';
|
||||
|
||||
|
||||
# TODO: Make all your working systems go to ext4 on the full disk for ease of use and storage
|
||||
virtualisation.docker.storageDriver = "btrfs";
|
||||
|
||||
security.sudo.extraConfig = ''
|
||||
# Sudoers config goes here
|
||||
'';
|
||||
|
||||
services = {
|
||||
syncthing = {
|
||||
enable = true;
|
||||
user = "jonas";
|
||||
dataDir = "/home/jonas/Syncthing"; # Default folder for new synced folders
|
||||
configDir = "/home/jonas/.config/syncthing"; # Folder for Syncthing's settings and keys
|
||||
};
|
||||
};
|
||||
|
||||
networking.extraHosts = ''
|
||||
127.0.0.1 jonas.local
|
||||
'';
|
||||
|
||||
fonts.fontDir.enable = true;
|
||||
|
||||
# Never change this!
|
||||
system.stateVersion = "25.05";
|
||||
}
|
||||
|
||||
@@ -4,41 +4,45 @@
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "usbhid" "sd_mod" "sr_mod" ];
|
||||
boot.initrd.availableKernelModules =
|
||||
[ "xhci_pci" "ahci" "nvme" "usb_storage" "usbhid" "sd_mod" "sr_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.kernelModules = [ "kvm-intel" "ecryptfs" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
# FUll btrfs config
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/e52b1440-66f3-4129-b3c0-fba3491e2bbc";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=root" ];
|
||||
};
|
||||
fileSystems."/home" =
|
||||
{ device = "/dev/disk/by-uuid/e52b1440-66f3-4129-b3c0-fba3491e2bbc";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=home" ];
|
||||
};
|
||||
fileSystems."/nix" =
|
||||
{ device = "/dev/disk/by-uuid/e52b1440-66f3-4129-b3c0-fba3491e2bbc";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=nix" ];
|
||||
};
|
||||
fileSystems."/shared" = {
|
||||
device = "/dev/disk/by-uuid/8CEA-13E3"; # use lsblk -f
|
||||
fsType = "exfat";
|
||||
options = [ "defaults" "uid=1000" "gid=100" "umask=000" ];
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/3091-F0BF";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0022" "dmask=0022" ];
|
||||
};
|
||||
# FUll btrfs config
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/e52b1440-66f3-4129-b3c0-fba3491e2bbc";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=root" ];
|
||||
};
|
||||
fileSystems."/home" = {
|
||||
device = "/dev/disk/by-uuid/e52b1440-66f3-4129-b3c0-fba3491e2bbc";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=home" ];
|
||||
};
|
||||
fileSystems."/nix" = {
|
||||
device = "/dev/disk/by-uuid/e52b1440-66f3-4129-b3c0-fba3491e2bbc";
|
||||
fsType = "btrfs";
|
||||
options = [ "subvol=nix" ];
|
||||
};
|
||||
|
||||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-uuid/3091-F0BF";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0022" "dmask=0022" ];
|
||||
};
|
||||
|
||||
swapDevices =
|
||||
[ { device = "/dev/disk/by-uuid/3e591e27-c6c5-4e28-900b-f899bc3d5e70"; }
|
||||
];
|
||||
[{ device = "/dev/disk/by-uuid/3e591e27-c6c5-4e28-900b-f899bc3d5e70"; }];
|
||||
|
||||
# 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
|
||||
@@ -49,5 +53,6 @@
|
||||
# networking.interfaces.wlp112s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
hardware.cpu.intel.updateMicrocode =
|
||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
||||
@@ -16,9 +16,8 @@
|
||||
./../../modules/laptop/battery.nix
|
||||
|
||||
./../../modules/graphics/workstation.nix
|
||||
|
||||
#./../../modules/services/webdav.nix
|
||||
./../../modules/services/scanning.nix
|
||||
./../../modules/graphics/grayscale.nix
|
||||
./../../modules/services/printer.nix
|
||||
];
|
||||
|
||||
networking.hostName = "nixyos";
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "sd_mod" "rtsx_usb_sdmmc" ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.kernelModules = [ "kvm-intel" "ecryptfs" ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/881615c5-5c12-46c5-8bd2-1959f9347980";
|
||||
|
||||
@@ -13,29 +13,26 @@
|
||||
./../../modules/hardware/boot.nix
|
||||
|
||||
./../../modules/graphics/workstation.nix
|
||||
./../../modules/graphics/grayscale.nix
|
||||
|
||||
./../../modules/laptop/powersave.nix
|
||||
./../../modules/laptop/battery.nix
|
||||
|
||||
#./../../modules/services/webdav.nix
|
||||
./../../modules/services/scanning.nix
|
||||
./../../modules/services/printer.nix
|
||||
];
|
||||
|
||||
networking.hostName = "thinix";
|
||||
batMode = "double";
|
||||
# Cannot have this and tlp
|
||||
#services.power-profiles-daemon.enable = true;
|
||||
|
||||
programs.gnupg.agent = {
|
||||
enable = true;
|
||||
pinentryPackage = with pkgs; pinentry-all;
|
||||
enableSSHSupport = true;
|
||||
};
|
||||
|
||||
swapDevices = [{
|
||||
device = "/swapfile";
|
||||
size = 4096;
|
||||
}];
|
||||
|
||||
system.stateVersion = "24.11";
|
||||
services.xserver.xkb = {
|
||||
layout = "us"; # or "us" or whatever base
|
||||
variant = "neo"; # for Neo2
|
||||
};
|
||||
console.useXkbConfig = true; # to make it apply on TTY too
|
||||
|
||||
system.stateVersion = "24.11"; # Dont change this
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
#boot.kernelModules = [ "ecryptfs" ];
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" ];
|
||||
|
||||
fileSystems = {
|
||||
|
||||
@@ -5,10 +5,37 @@
|
||||
services.locate.enable = true;
|
||||
services.openssh.enable = true;
|
||||
|
||||
hardware.enableAllFirmware = true;
|
||||
|
||||
services = {
|
||||
udisks2.enable = true;
|
||||
gvfs.enable = true;
|
||||
};
|
||||
|
||||
security.polkit.enable = true;
|
||||
security.pam.services.login.enableGnomeKeyring = true;
|
||||
services.gnome.gnome-keyring.enable = true;
|
||||
#security.pam.enableEcryptfs = true;
|
||||
|
||||
security.polkit.extraConfig = ''
|
||||
polkit.addRule(function(action, subject) {
|
||||
if (action.id == "org.freedesktop.udisks2.filesystem-mount-system" &&
|
||||
subject.isInGroup("wheel")) {
|
||||
return polkit.Result.YES;
|
||||
}
|
||||
});
|
||||
'';
|
||||
|
||||
# Nix fun
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
nix.settings.experimental-features = [ "flakes" "nix-command" ];
|
||||
|
||||
programs.gnupg.agent = {
|
||||
enable = true;
|
||||
pinentryPackage = with pkgs; pinentry-all;
|
||||
enableSSHSupport = true;
|
||||
};
|
||||
|
||||
time.timeZone = "Europe/Berlin";
|
||||
programs.nix-ld.enable = true; # Linking support
|
||||
|
||||
@@ -16,7 +43,9 @@
|
||||
services.avahi.enable = true;
|
||||
services.avahi.nssmdns4 = true;
|
||||
|
||||
environment = { systemPackages = with pkgs; [ xorg.xrandr git starship zoxide rsync ]; };
|
||||
environment = {
|
||||
systemPackages = with pkgs; [ yazi tmux git starship zoxide rsync xorg.libX11.dev rclone neovim alacritty gtk4.dev ];
|
||||
};
|
||||
|
||||
nix.optimise.automatic = true;
|
||||
|
||||
@@ -29,10 +58,10 @@
|
||||
networking = { networkmanager = { enable = true; }; };
|
||||
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
console = {
|
||||
font = "Lat2-Terminus16";
|
||||
keyMap = "us";
|
||||
};
|
||||
#console = {
|
||||
# font = "Lat2-Terminus16";
|
||||
# keyMap = "us";
|
||||
#};
|
||||
|
||||
programs.zsh = {
|
||||
enable = true;
|
||||
@@ -43,4 +72,6 @@
|
||||
[ "history-substring-search" "git" "zoxide" "vi-mode" "systemadmin" ];
|
||||
};
|
||||
};
|
||||
|
||||
programs.ydotool.enable = true;
|
||||
}
|
||||
|
||||
28
modules/graphics/grayscale.nix
Normal file
28
modules/graphics/grayscale.nix
Normal file
@@ -0,0 +1,28 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
let
|
||||
user = "jonas";
|
||||
uid = "1000";
|
||||
in {
|
||||
systemd.user.services.hyprshade-toggle = {
|
||||
description = "Toggle Hyprshade grayscale";
|
||||
enable = true;
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
ExecStart = "${pkgs.bash}/bin/bash /home/${user}/projects/scripts/shell/toggle_grayscale.sh";
|
||||
Environment = ''
|
||||
PATH=/home/jonas/.nix-profile/bin:/run/current-system/sw/bin:/usr/bin:${pkgs.hyprshade}/bin
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
systemd.user.timers.hyprshade-toggle = {
|
||||
description = "Run hyprshade toggle";
|
||||
timerConfig = {
|
||||
OnBootSec = "1min";
|
||||
OnUnitActiveSec = "3min";
|
||||
AccuracySec = "30s";
|
||||
};
|
||||
wantedBy = [ "timers.target" ];
|
||||
};
|
||||
}
|
||||
@@ -7,6 +7,7 @@
|
||||
QT_QPA_PLATFORMTHEME = "qt6ct";
|
||||
QT_STYLE_OVERRIDE = "kvantum";
|
||||
QT_QPA_PLATFORM = "xcb";
|
||||
TERM = "alacritty";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -6,10 +6,6 @@ in {
|
||||
enableCuda = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Enable CUDA support for Blender and other packages.
|
||||
Warning: This can cause very long build times.
|
||||
'';
|
||||
};
|
||||
nvidiaOpen = mkOption {
|
||||
type = types.bool;
|
||||
@@ -29,16 +25,5 @@ in {
|
||||
nvidiaSettings = true;
|
||||
package = config.boot.kernelPackages.nvidiaPackages.stable;
|
||||
};
|
||||
|
||||
# Apply CUDA-specific settings if enabled
|
||||
nixpkgs.config.cudaSupport = config.enableCuda;
|
||||
hardware.enableAllFirmware = true;
|
||||
|
||||
environment.systemPackages = (if config.enableCuda then
|
||||
[
|
||||
(pkgs.blender.override { cudaSupport = true; })
|
||||
]
|
||||
else
|
||||
[ ]);
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
imports = [ ../hardware/nvidia.nix ];
|
||||
|
||||
services.ollama = {
|
||||
enable = true;
|
||||
acceleration = "cuda";
|
||||
};
|
||||
}
|
||||
@@ -6,4 +6,6 @@
|
||||
hardware.sane.extraBackends = [ pkgs.sane-airscan ];
|
||||
hardware.sane.disabledDefaultBackends = [ "escl" ];
|
||||
services.udev.packages = [ pkgs.sane-airscan ];
|
||||
|
||||
services.printing.enable = true;
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
services.printing.enable = true;
|
||||
}
|
||||
@@ -1,34 +0,0 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
# For web mounting
|
||||
services.davfs2.enable = true;
|
||||
|
||||
# Load the secret
|
||||
sops = {
|
||||
secrets = {
|
||||
webdav_authstring = {
|
||||
mode = "0600";
|
||||
path = "/etc/davfs2/secrets";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
systemd.mounts = [{
|
||||
description = "Webdav mount point";
|
||||
after = [ "network-online.target" ];
|
||||
wants = [ "network-online.target" ];
|
||||
what = "https://dav.hahn1.one";
|
||||
where = "/webdav";
|
||||
type = "davfs";
|
||||
options = "uid=1000,gid=1000,file_mode=0664,dir_mode=2775,_netdev";
|
||||
mountConfig.TimeoutSec = "5s";
|
||||
}];
|
||||
|
||||
systemd.automounts = [{
|
||||
description = "Webdav automount";
|
||||
where = "/webdav";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
automountConfig = { TimeoutIdleSec = "2m"; };
|
||||
}];
|
||||
}
|
||||
@@ -3,8 +3,6 @@
|
||||
{
|
||||
imports = [ ./packages.nix ];
|
||||
|
||||
services.gnome-keyring.enable = true;
|
||||
|
||||
xdg.mimeApps = {
|
||||
enable = true;
|
||||
defaultApplications = {
|
||||
@@ -20,6 +18,46 @@
|
||||
};
|
||||
};
|
||||
|
||||
# Enable and configure the gnome terminal for the nemo file manager
|
||||
programs.gnome-terminal = {
|
||||
enable = true;
|
||||
showMenubar = false;
|
||||
themeVariant = "dark";
|
||||
profile."17ef1520-f08d-403f-b033-d8ccee6b01f9" = {
|
||||
visibleName = "MainHome";
|
||||
transparencyPercent = 60;
|
||||
font = "FiraCode Nerd Font 12"; # Fira is installed on the system by the nixos config
|
||||
default = true;
|
||||
audibleBell = false;
|
||||
cursorBlinkMode = "off";
|
||||
colors = {
|
||||
backgroundColor = "#1d1d1d";
|
||||
cursor = {
|
||||
foreground = "#1d1d1d"; # text inside cursor
|
||||
background = "#ffb86c"; # light orange block
|
||||
};
|
||||
foregroundColor = "#f7f6ec";
|
||||
palette = [ "#343835" "#ce3e60" "#7bb75b" "#e8b32a" "#4c99d3" "#a57fc4" "#389aac" "#f9faf6"
|
||||
"#585a58" "#d18ea6" "#767e2b" "#77592e" "#337879" "#7f5190" "#76bbca" "#b1b5ae" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
services.udiskie = {
|
||||
enable = true;
|
||||
notify = true;
|
||||
automount = true;
|
||||
tray = "auto";
|
||||
settings = {
|
||||
# workaround for
|
||||
# https://github.com/nix-community/home-manager/issues/632
|
||||
program_options = {
|
||||
# replace with your favorite file manager
|
||||
file_manager = "${pkgs.nemo-with-extensions}/bin/nemo";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
xdg.desktopEntries.fehcustom = {
|
||||
name = "FehCustom";
|
||||
terminal = false;
|
||||
@@ -37,6 +75,7 @@
|
||||
};
|
||||
};
|
||||
|
||||
# Theming for ease of use of gui apps
|
||||
gtk = {
|
||||
enable = true;
|
||||
iconTheme = {
|
||||
@@ -48,21 +87,25 @@
|
||||
package = pkgs.gnome-themes-extra;
|
||||
};
|
||||
};
|
||||
|
||||
qt = {
|
||||
enable = true;
|
||||
platformTheme.name = "qtct";
|
||||
style.name = "Kvantum";
|
||||
style.name = "kvantum";
|
||||
};
|
||||
|
||||
xdg.configFile."Kvantum/kvantum.kvconfig".source =
|
||||
(pkgs.formats.ini { }).generate "kvantum.kvconfig" {
|
||||
General.theme = "Catppuccin-Frappe-Rosewater";
|
||||
General.theme = "KvAdaptaDark";
|
||||
};
|
||||
xdg.configFile."qt6ct/qt6ct.conf".source = pkgs.writeTextFile {
|
||||
name = "qt6ct.conf";
|
||||
text =
|
||||
" [Appearance]\n color_scheme_path=${pkgs.qt6ct}/share/qt6ct/colors/airy.conf\n custom_palette=false\n icon_theme=Papirus-Dark\n standard_dialogs=default\n style=kvantum\n";
|
||||
''
|
||||
[Appearance]
|
||||
icon_theme=Papirus-Dark
|
||||
style=kvantum
|
||||
standard_dialogs=default
|
||||
'';
|
||||
|
||||
};
|
||||
|
||||
programs.starship = {
|
||||
@@ -83,5 +126,5 @@
|
||||
|
||||
# Let Home Manager install and manage itself.
|
||||
programs.home-manager.enable = true;
|
||||
home.stateVersion = "24.11";
|
||||
home.stateVersion = "24.11"; # Dont change
|
||||
}
|
||||
|
||||
@@ -2,185 +2,157 @@
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
weechat
|
||||
clang
|
||||
libcxx
|
||||
just
|
||||
deno
|
||||
########################################
|
||||
# GUI #
|
||||
########################################
|
||||
|
||||
# --- Core GUI ---
|
||||
alacritty
|
||||
ffmpeg
|
||||
|
||||
pavucontrol
|
||||
iamb
|
||||
sdkmanager
|
||||
air
|
||||
nmap
|
||||
wakeonlan
|
||||
wiki-tui
|
||||
ansible
|
||||
terraform
|
||||
android-tools
|
||||
|
||||
kitty
|
||||
vscode
|
||||
libreoffice
|
||||
unstable.sioyek
|
||||
zathura
|
||||
qalculate-qt
|
||||
|
||||
# --- Communication & Internet ---
|
||||
discord
|
||||
thunderbird
|
||||
tor-browser
|
||||
unstable.signal-desktop
|
||||
qbittorrent
|
||||
ausweisapp
|
||||
nextcloud-client
|
||||
spotify
|
||||
|
||||
# --- Media & Desktop Tools ---
|
||||
simple-scan
|
||||
obsidian
|
||||
rclone
|
||||
|
||||
sops
|
||||
gimp
|
||||
audio-recorder
|
||||
cheese
|
||||
age
|
||||
git-lfs
|
||||
|
||||
tor
|
||||
torsocks
|
||||
w3m
|
||||
timer
|
||||
qbittorrent
|
||||
discord
|
||||
blender
|
||||
audacity
|
||||
zoom-us
|
||||
vlc
|
||||
thunderbird
|
||||
mpv
|
||||
obsidian
|
||||
obs-studio
|
||||
prismlauncher
|
||||
inkscape
|
||||
rnote
|
||||
nemo-with-extensions
|
||||
xournalpp
|
||||
anki
|
||||
|
||||
shotcut
|
||||
hyprshot # All the hypr stuff
|
||||
hyprpicker
|
||||
hyprlock
|
||||
hypridle
|
||||
hyprshade
|
||||
hyprsunset
|
||||
hyprpaper
|
||||
|
||||
todo-txt-cli
|
||||
systemctl-tui
|
||||
acpi
|
||||
waybar
|
||||
dunst
|
||||
networkmanagerapplet
|
||||
pavucontrol
|
||||
feh
|
||||
|
||||
watson
|
||||
slides
|
||||
|
||||
imagemagick
|
||||
xdragon
|
||||
|
||||
luarocks
|
||||
|
||||
gradle
|
||||
openjdk
|
||||
|
||||
findutils.locate
|
||||
ethtool
|
||||
qalculate-qt
|
||||
wl-clip-persist
|
||||
btop
|
||||
fastfetch
|
||||
zathura
|
||||
eza
|
||||
tofi
|
||||
fuzzel
|
||||
|
||||
networkmanagerapplet
|
||||
gdu
|
||||
hyprpaper
|
||||
tokei
|
||||
fzf
|
||||
glibc
|
||||
gnumake
|
||||
ninja
|
||||
cmake
|
||||
meson
|
||||
lld
|
||||
########################################
|
||||
# CLI #
|
||||
########################################
|
||||
|
||||
vscode-langservers-extracted
|
||||
|
||||
clang
|
||||
clang-tools # Provides clangd
|
||||
go
|
||||
bitwarden-desktop
|
||||
libinput
|
||||
cudaPackages.cudatoolkit
|
||||
ydotool
|
||||
input-remapper
|
||||
ausweisapp
|
||||
spotify
|
||||
pgadmin4
|
||||
dig
|
||||
lazydocker
|
||||
libtool
|
||||
love
|
||||
lua
|
||||
zig
|
||||
cargo
|
||||
tor-browser
|
||||
bitwarden-cli
|
||||
rpi-imager
|
||||
cppcheck
|
||||
lazygit
|
||||
nodejs
|
||||
# --- Essentials & Navigation ---
|
||||
ripgrep
|
||||
signal-desktop
|
||||
unison
|
||||
php
|
||||
intelephense
|
||||
trash-cli
|
||||
|
||||
# Full haskell development environment
|
||||
haskellPackages.ghc
|
||||
haskellPackages.cabal-install
|
||||
haskellPackages.stack
|
||||
haskellPackages.hoogle
|
||||
haskellPackages.haskell-language-server
|
||||
|
||||
python3
|
||||
|
||||
fd
|
||||
ttyper
|
||||
zoxide
|
||||
vim
|
||||
tofi
|
||||
gcr # Keyring
|
||||
fzf
|
||||
eza
|
||||
bat
|
||||
dunst
|
||||
killall
|
||||
libreoffice
|
||||
perl
|
||||
pipx
|
||||
waybar
|
||||
stow
|
||||
brightnessctl
|
||||
anki
|
||||
unstable.typst
|
||||
mediainfo
|
||||
powertop
|
||||
exiftool
|
||||
curl
|
||||
sioyek
|
||||
|
||||
xournalpp
|
||||
rnote
|
||||
vim
|
||||
unstable.neovim
|
||||
emacs
|
||||
hyprshot
|
||||
hyprpicker
|
||||
hyprsunset
|
||||
|
||||
inotify-tools
|
||||
stow
|
||||
wl-clipboard
|
||||
|
||||
mpv
|
||||
gitui
|
||||
keepassxc
|
||||
kitty
|
||||
unstable.yazi
|
||||
neovim
|
||||
htop
|
||||
alpine
|
||||
wget
|
||||
tmux
|
||||
|
||||
wl-clip-persist
|
||||
killall
|
||||
trash-cli
|
||||
file
|
||||
zip
|
||||
xz
|
||||
unzip
|
||||
|
||||
file
|
||||
gnupg
|
||||
# --- System & Network ---
|
||||
btop
|
||||
iotop
|
||||
fastfetch
|
||||
acpi
|
||||
brightnessctl
|
||||
ethtool
|
||||
findutils
|
||||
nmap
|
||||
wakeonlan
|
||||
tor
|
||||
torsocks
|
||||
w3m
|
||||
curl
|
||||
wget
|
||||
libinput
|
||||
mtr
|
||||
gdu
|
||||
timer
|
||||
|
||||
nix-output-monitor
|
||||
# --- Productivity & Misc ---
|
||||
just
|
||||
todo-txt-cli
|
||||
typst
|
||||
systemctl-tui
|
||||
wiki-tui
|
||||
watson
|
||||
slides
|
||||
imagemagick
|
||||
immich-cli
|
||||
parted
|
||||
lsof
|
||||
tt
|
||||
bitwarden-cli
|
||||
lazydocker
|
||||
poppler_utils
|
||||
prismlauncher
|
||||
entr
|
||||
yq
|
||||
lazygit
|
||||
gitui
|
||||
tokei
|
||||
dig
|
||||
unstable.yazi
|
||||
|
||||
# --- Languages & Package Managers ---
|
||||
python3
|
||||
nodejs
|
||||
go
|
||||
lua
|
||||
luarocks
|
||||
deno
|
||||
pipx
|
||||
gradle
|
||||
openjdk
|
||||
|
||||
# --- Build Tools ---
|
||||
clang
|
||||
clang-tools
|
||||
gnumake
|
||||
cmake
|
||||
ninja
|
||||
meson
|
||||
lld
|
||||
|
||||
# --- DevOps & Versioning ---
|
||||
git-lfs
|
||||
sops
|
||||
age
|
||||
ecryptfs
|
||||
ansible
|
||||
android-tools
|
||||
sdkmanager
|
||||
air
|
||||
vscode-langservers-extracted
|
||||
];
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
users.users = {
|
||||
jonas = {
|
||||
isNormalUser = true;
|
||||
uid = 1000;
|
||||
extraGroups = [
|
||||
"docker"
|
||||
"input"
|
||||
|
||||
Reference in New Issue
Block a user