mirror of
https://github.com/Ascyii/nixos.git
synced 2026-01-01 06:44:26 -05:00
Cleanup of code and modules. Fully modular config now. Cleanup unused and redundant packages. Fix shell alias
This commit is contained in:
@@ -1,31 +1,30 @@
|
|||||||
{ ... }:
|
{ ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
|
|
||||||
./../../user/users.nix
|
./../../user/users.nix
|
||||||
|
|
||||||
./../../modules/common.nix
|
./../../modules/common.nix
|
||||||
|
|
||||||
./../../modules/hardware/xremap.nix
|
./../../modules/services/webdav.nix
|
||||||
./../../modules/services/webdav.nix
|
|
||||||
./../../modules/graphics/workstation.nix
|
|
||||||
|
|
||||||
./../../modules/hardware/nvidia.nix
|
./../../modules/graphics/workstation.nix
|
||||||
];
|
|
||||||
|
|
||||||
networking.hostName = "minoxy";
|
./../../modules/hardware/nvidia.nix
|
||||||
|
./../../modules/hardware/boot.nix
|
||||||
|
./../../modules/hardware/xremap.nix
|
||||||
|
];
|
||||||
|
|
||||||
boot.loader.systemd-boot.enable = true;
|
networking.hostName = "minoxy";
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
|
||||||
|
|
||||||
systemd.targets.sleep.enable = true;
|
systemd.targets.sleep.enable = true;
|
||||||
systemd.targets.suspend.enable = true;
|
systemd.targets.suspend.enable = true;
|
||||||
|
|
||||||
virtualisation.docker.enable = true;
|
virtualisation.docker.enable = true;
|
||||||
virtualisation.docker.storageDriver = "btrfs";
|
virtualisation.docker.storageDriver = "btrfs";
|
||||||
|
|
||||||
# Never change this!
|
# Never change this!
|
||||||
system.stateVersion = "25.05";
|
system.stateVersion = "25.05";
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,25 +9,18 @@
|
|||||||
./../../modules/common.nix
|
./../../modules/common.nix
|
||||||
|
|
||||||
./../../modules/hardware/xremap.nix
|
./../../modules/hardware/xremap.nix
|
||||||
./../../modules/hardware/battery.nix
|
./../../modules/hardware/boot.nix
|
||||||
|
|
||||||
|
./../../modules/laptop/powersave.nix
|
||||||
|
./../../modules/laptop/battery.nix
|
||||||
|
|
||||||
./../../modules/graphics/workstation.nix
|
./../../modules/graphics/workstation.nix
|
||||||
|
|
||||||
./../../modules/services/webdav.nix.nix
|
./../../modules/services/webdav.nix
|
||||||
./../../modules/services/scanning.nix.nix
|
./../../modules/services/scanning.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
networking.hostName = "nixyos";
|
networking.hostName = "nixyos";
|
||||||
batMode = "single";
|
|
||||||
|
|
||||||
boot.loader.systemd-boot.enable = true;
|
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
|
||||||
|
|
||||||
networking = {
|
|
||||||
networkmanager = {
|
|
||||||
wifi.powersave = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# Older machine
|
# Older machine
|
||||||
system.stateVersion = "24.11";
|
system.stateVersion = "24.11";
|
||||||
|
|||||||
@@ -9,10 +9,13 @@
|
|||||||
./../../modules/common.nix
|
./../../modules/common.nix
|
||||||
|
|
||||||
./../../modules/hardware/xremap.nix
|
./../../modules/hardware/xremap.nix
|
||||||
./../../modules/hardware/battery.nix
|
./../../modules/hardware/boot.nix
|
||||||
|
|
||||||
./../../modules/graphics/workstation.nix
|
./../../modules/graphics/workstation.nix
|
||||||
|
|
||||||
|
./../../modules/laptop/powersave.nix
|
||||||
|
./../../modules/laptop/battery.nix
|
||||||
|
|
||||||
./../../modules/services/webdav.nix.nix
|
./../../modules/services/webdav.nix.nix
|
||||||
./../../modules/services/scanning.nix.nix
|
./../../modules/services/scanning.nix.nix
|
||||||
];
|
];
|
||||||
@@ -20,21 +23,12 @@
|
|||||||
networking.hostName = "thinix";
|
networking.hostName = "thinix";
|
||||||
batMode = "double";
|
batMode = "double";
|
||||||
|
|
||||||
boot.loader.systemd-boot.enable = true;
|
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
|
||||||
|
|
||||||
programs.gnupg.agent = {
|
programs.gnupg.agent = {
|
||||||
enable = true;
|
enable = true;
|
||||||
pinentryPackage = with pkgs; pinentry-all;
|
pinentryPackage = with pkgs; pinentry-all;
|
||||||
enableSSHSupport = true;
|
enableSSHSupport = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
networking = {
|
|
||||||
networkmanager = {
|
|
||||||
wifi.powersave = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
swapDevices = [
|
swapDevices = [
|
||||||
{
|
{
|
||||||
device = "/swapfile";
|
device = "/swapfile";
|
||||||
@@ -42,6 +36,5 @@
|
|||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
# Older machine
|
|
||||||
system.stateVersion = "24.11";
|
system.stateVersion = "24.11";
|
||||||
}
|
}
|
||||||
|
|||||||
26
modules/hardware/boot.nix
Normal file
26
modules/hardware/boot.nix
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
{ config, lib, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
inherit (lib) mkOption types;
|
||||||
|
in {
|
||||||
|
options.bootMode = mkOption {
|
||||||
|
type = types.enum [ "uefi" "legacy" ];
|
||||||
|
default = "uefi";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = {
|
||||||
|
boot.consoleLogLevel = 0;
|
||||||
|
boot.kernelParams = [ "quiet" "udev.log_level=3" ];
|
||||||
|
|
||||||
|
boot.loader = if config.bootMode == "uefi" then {
|
||||||
|
efi.canTouchEfiVariables = true;
|
||||||
|
systemd-boot.enable = true;
|
||||||
|
timeout = 0;
|
||||||
|
} else {
|
||||||
|
grub.enable = true;
|
||||||
|
grub.device = "/dev/sda";
|
||||||
|
timeout = 0;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
@@ -13,11 +13,11 @@
|
|||||||
package = config.boot.kernelPackages.nvidiaPackages.stable;
|
package = config.boot.kernelPackages.nvidiaPackages.stable;
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
#environment.systemPackages = with pkgs; [
|
||||||
(blender.override {
|
# (blender.override {
|
||||||
cudaSupport = true;
|
# cudaSupport = true;
|
||||||
})
|
# })
|
||||||
];
|
#];
|
||||||
|
|
||||||
# This causes very long build times
|
# This causes very long build times
|
||||||
#nixpkgs.config.cudaSupport = true;
|
#nixpkgs.config.cudaSupport = true;
|
||||||
|
|||||||
9
modules/laptop/powersave.nix
Normal file
9
modules/laptop/powersave.nix
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
{ ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
networking = {
|
||||||
|
networkmanager = {
|
||||||
|
wifi.powersave = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
161
user/home.nix
161
user/home.nix
@@ -1,102 +1,87 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [ ./packages.nix ];
|
||||||
./packages.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
services.gnome-keyring.enable = true;
|
services.gnome-keyring.enable = true;
|
||||||
|
|
||||||
xdg.mimeApps = {
|
xdg.mimeApps = {
|
||||||
enable = true;
|
enable = true;
|
||||||
defaultApplications = {
|
defaultApplications = {
|
||||||
"text/html" = "firefox.desktop";
|
"text/html" = "firefox.desktop";
|
||||||
"x-scheme-handler/http" = "firefox.desktop";
|
"x-scheme-handler/http" = "firefox.desktop";
|
||||||
"x-scheme-handler/https" = "firefox.desktop";
|
"x-scheme-handler/https" = "firefox.desktop";
|
||||||
"x-scheme-handler/about" = "firefox.desktop";
|
"x-scheme-handler/about" = "firefox.desktop";
|
||||||
"x-scheme-handler/unknown" = "firefox.desktop";
|
"x-scheme-handler/unknown" = "firefox.desktop";
|
||||||
"application/pdf" = "sioyek.desktop";
|
"application/pdf" = "sioyek.desktop";
|
||||||
"application/rnote" = "rnote.desktop";
|
"application/rnote" = "rnote.desktop";
|
||||||
"video/mp4" = "mpv.desktop";
|
"video/mp4" = "mpv.desktop";
|
||||||
"image/*" = "fehcustom.desktop";
|
"image/*" = "fehcustom.desktop";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
xdg.desktopEntries.fehcustom = {
|
xdg.desktopEntries.fehcustom = {
|
||||||
name = "FehCustom";
|
name = "FehCustom";
|
||||||
terminal = false;
|
terminal = false;
|
||||||
exec = "${pkgs.feh}/bin/feh -d --keep-zoom-vp --draw-exif --start-at %u";
|
exec = "${pkgs.feh}/bin/feh -d --keep-zoom-vp --draw-exif --start-at %u";
|
||||||
};
|
};
|
||||||
|
|
||||||
home = {
|
home = {
|
||||||
username = "jonas";
|
username = "jonas";
|
||||||
homeDirectory = "/home/jonas";
|
homeDirectory = "/home/jonas";
|
||||||
sessionVariables = {
|
pointerCursor = {
|
||||||
EDITOR = "nvim";
|
gtk.enable = true;
|
||||||
HTTP_HOME = "duckduckgo.com";
|
name = "catppuccin-frappe-rosewater-cursors";
|
||||||
MANPAGER="nvim +Man!";
|
package = pkgs.catppuccin-cursors.frappeRosewater;
|
||||||
};
|
size = 18;
|
||||||
shellAliases = {
|
};
|
||||||
fla = "sudo nixos-rebuild switch --flake '~/nixos#'";
|
};
|
||||||
};
|
|
||||||
pointerCursor = {
|
|
||||||
gtk.enable = true;
|
|
||||||
name = "catppuccin-frappe-rosewater-cursors";
|
|
||||||
package = pkgs.catppuccin-cursors.frappeRosewater;
|
|
||||||
size = 18;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
gtk = {
|
gtk = {
|
||||||
enable = true;
|
enable = true;
|
||||||
iconTheme = {
|
iconTheme = {
|
||||||
package = pkgs.papirus-icon-theme;
|
package = pkgs.papirus-icon-theme;
|
||||||
name = "Papirus-Dark";
|
name = "Papirus-Dark";
|
||||||
};
|
};
|
||||||
theme = {
|
theme = {
|
||||||
name = "Adwaita-dark";
|
name = "Adwaita-dark";
|
||||||
package = pkgs.gnome-themes-extra;
|
package = pkgs.gnome-themes-extra;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
qt = {
|
qt = {
|
||||||
enable = true;
|
enable = true;
|
||||||
platformTheme.name = "qtct";
|
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";
|
|
||||||
};
|
|
||||||
xdg.configFile."qt6ct/qt6ct.conf".source = pkgs.writeTextFile {
|
|
||||||
name = "qt6ct.conf";
|
|
||||||
text = ''
|
|
||||||
[Appearance]
|
|
||||||
color_scheme_path=${pkgs.qt6ct}/share/qt6ct/colors/airy.conf
|
|
||||||
custom_palette=false
|
|
||||||
icon_theme=Papirus-Dark
|
|
||||||
standard_dialogs=default
|
|
||||||
style=kvantum
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.starship = {
|
xdg.configFile."Kvantum/kvantum.kvconfig".source =
|
||||||
enable = true;
|
(pkgs.formats.ini { }).generate "kvantum.kvconfig" {
|
||||||
settings = {
|
General.theme = "Catppuccin-Frappe-Rosewater";
|
||||||
add_newline = false;
|
};
|
||||||
aws.disabled = true;
|
xdg.configFile."qt6ct/qt6ct.conf".source = pkgs.writeTextFile {
|
||||||
gcloud.disabled = true;
|
name = "qt6ct.conf";
|
||||||
line_break.disabled = true;
|
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";
|
||||||
|
};
|
||||||
|
|
||||||
sudo = {
|
programs.starship = {
|
||||||
disabled = false;
|
enable = true;
|
||||||
symbol = "SUDO ";
|
settings = {
|
||||||
style = "bold red";
|
add_newline = false;
|
||||||
};
|
aws.disabled = true;
|
||||||
|
gcloud.disabled = true;
|
||||||
|
line_break.disabled = true;
|
||||||
|
sudo = {
|
||||||
|
disabled = false;
|
||||||
|
symbol = "SUDO ";
|
||||||
|
style = "bold red";
|
||||||
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Let Home Manager install and manage itself.
|
# Let Home Manager install and manage itself.
|
||||||
programs.home-manager.enable = true;
|
programs.home-manager.enable = true;
|
||||||
home.stateVersion = "24.11";
|
home.stateVersion = "24.11";
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,190 +1,135 @@
|
|||||||
{ pkgs, ...}:
|
{ pkgs, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
weechat
|
weechat
|
||||||
just
|
just
|
||||||
iamb
|
iamb
|
||||||
wiki-tui
|
wiki-tui
|
||||||
|
|
||||||
vscode
|
vscode
|
||||||
|
|
||||||
simple-scan
|
simple-scan
|
||||||
obsidian
|
obsidian
|
||||||
rclone
|
rclone
|
||||||
|
|
||||||
#jujutsu
|
unstable.spotify-player
|
||||||
|
|
||||||
unstable.spotify-player
|
sops
|
||||||
|
gimp
|
||||||
|
audio-recorder
|
||||||
|
cheese
|
||||||
|
age
|
||||||
|
git-lfs
|
||||||
|
|
||||||
sops
|
tor
|
||||||
gimp
|
torsocks
|
||||||
audio-recorder
|
w3m
|
||||||
cheese
|
timer
|
||||||
age
|
qbittorrent
|
||||||
git-lfs
|
discord
|
||||||
|
blender
|
||||||
|
audacity
|
||||||
|
zoom-us
|
||||||
|
vlc
|
||||||
|
thunderbird
|
||||||
|
obsidian
|
||||||
|
obs-studio
|
||||||
|
prismlauncher
|
||||||
|
inkscape
|
||||||
|
|
||||||
tor
|
shotcut
|
||||||
torsocks
|
|
||||||
w3m
|
|
||||||
timer
|
|
||||||
qbittorrent
|
|
||||||
discord
|
|
||||||
blender
|
|
||||||
audacity
|
|
||||||
zoom-us
|
|
||||||
vlc
|
|
||||||
thunderbird
|
|
||||||
obsidian
|
|
||||||
obs-studio
|
|
||||||
prismlauncher
|
|
||||||
inkscape
|
|
||||||
|
|
||||||
shotcut
|
todo-txt-cli
|
||||||
|
systemctl-tui
|
||||||
|
acpi
|
||||||
|
feh
|
||||||
|
|
||||||
papirus-folders
|
watson
|
||||||
todo-txt-cli
|
slides
|
||||||
systemctl-tui
|
|
||||||
acpi
|
|
||||||
zsh
|
|
||||||
feh
|
|
||||||
|
|
||||||
watson
|
imagemagick
|
||||||
slides
|
xdragon
|
||||||
|
|
||||||
imagemagick
|
luarocks
|
||||||
xdragon
|
|
||||||
|
|
||||||
luarocks
|
gradle
|
||||||
lua
|
openjdk
|
||||||
|
|
||||||
gradle
|
findutils.locate
|
||||||
openjdk
|
ethtool
|
||||||
|
qalculate-qt
|
||||||
|
wl-clip-persist
|
||||||
|
btop
|
||||||
|
fastfetch
|
||||||
|
zathura
|
||||||
|
eza
|
||||||
|
fuzzel
|
||||||
|
|
||||||
findutils.locate
|
networkmanagerapplet
|
||||||
ethtool
|
gdu
|
||||||
qalculate-qt
|
hyprpaper
|
||||||
wl-clip-persist
|
tokei
|
||||||
btop
|
fzf
|
||||||
fastfetch
|
gcc
|
||||||
zathura
|
gnumake
|
||||||
eza
|
lazygit
|
||||||
fuzzel
|
nodejs
|
||||||
catppuccin-cursors
|
ripgrep
|
||||||
networkmanagerapplet
|
signal-desktop
|
||||||
gdu
|
unison
|
||||||
hyprpaper
|
trash-cli
|
||||||
tokei
|
python3
|
||||||
fzf
|
fd
|
||||||
gcc
|
ttyper
|
||||||
gnumake
|
zoxide
|
||||||
lazygit
|
vim
|
||||||
nodejs
|
tofi
|
||||||
ripgrep
|
bat
|
||||||
signal-desktop
|
dunst
|
||||||
unison
|
killall
|
||||||
trash-cli
|
libreoffice
|
||||||
starship
|
perl
|
||||||
python3
|
pipx
|
||||||
fd
|
waybar
|
||||||
ttyper
|
stow
|
||||||
zoxide
|
brightnessctl
|
||||||
vim
|
anki
|
||||||
tofi
|
unstable.typst
|
||||||
bat
|
mediainfo
|
||||||
clipse
|
powertop
|
||||||
dunst
|
exiftool
|
||||||
killall
|
curl
|
||||||
libreoffice
|
sioyek
|
||||||
perl
|
|
||||||
pipx
|
|
||||||
wpgtk
|
|
||||||
waybar
|
|
||||||
stow
|
|
||||||
brightnessctl
|
|
||||||
anki
|
|
||||||
unstable.typst
|
|
||||||
dnsmasq
|
|
||||||
davfs2
|
|
||||||
mediainfo
|
|
||||||
powertop
|
|
||||||
#midori
|
|
||||||
exiftool
|
|
||||||
gtk4.dev
|
|
||||||
curl
|
|
||||||
sioyek
|
|
||||||
qt6.qtbase
|
|
||||||
|
|
||||||
libpulseaudio
|
xournalpp
|
||||||
xournalpp
|
rnote
|
||||||
rnote
|
emacs
|
||||||
libinput
|
cargo
|
||||||
libGL
|
hyprshot
|
||||||
libglvnd
|
hyprpicker
|
||||||
emacs
|
hyprsunset
|
||||||
cargo
|
|
||||||
hyprshot
|
|
||||||
hyprpicker
|
|
||||||
hyprsunset
|
|
||||||
wl-clipboard
|
|
||||||
mpv
|
|
||||||
gitui
|
|
||||||
keepassxc
|
|
||||||
kitty
|
|
||||||
wlsunset
|
|
||||||
unstable.yazi
|
|
||||||
neovim
|
|
||||||
htop
|
|
||||||
alpine
|
|
||||||
wget
|
|
||||||
tmux
|
|
||||||
|
|
||||||
zip
|
wl-clipboard
|
||||||
xz
|
|
||||||
unzip
|
|
||||||
p7zip
|
|
||||||
|
|
||||||
jq
|
mpv
|
||||||
yq-go
|
gitui
|
||||||
|
keepassxc
|
||||||
|
kitty
|
||||||
|
unstable.yazi
|
||||||
|
neovim
|
||||||
|
htop
|
||||||
|
alpine
|
||||||
|
wget
|
||||||
|
tmux
|
||||||
|
|
||||||
mtr
|
zip
|
||||||
iperf3
|
xz
|
||||||
dnsutils
|
unzip
|
||||||
ldns
|
|
||||||
aria2
|
|
||||||
socat
|
|
||||||
nmap
|
|
||||||
ipcalc
|
|
||||||
|
|
||||||
# Misc
|
file
|
||||||
cowsay
|
gnupg
|
||||||
file
|
|
||||||
which
|
|
||||||
gnused
|
|
||||||
gnutar
|
|
||||||
gawk
|
|
||||||
zstd
|
|
||||||
gnupg
|
|
||||||
|
|
||||||
nix-output-monitor
|
nix-output-monitor
|
||||||
|
];
|
||||||
# Productivity
|
|
||||||
hugo
|
|
||||||
glow
|
|
||||||
|
|
||||||
iotop
|
|
||||||
iftop
|
|
||||||
|
|
||||||
# System call monitoring
|
|
||||||
strace
|
|
||||||
ltrace
|
|
||||||
lsof
|
|
||||||
|
|
||||||
# System tools
|
|
||||||
sysstat
|
|
||||||
lm_sensors
|
|
||||||
pciutils
|
|
||||||
usbutils
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user