Another reformatting & refactor
- fix all statix lints - format with nixpkgs-fmt instead of alejandro
This commit is contained in:
parent
8c7c84c129
commit
4539cc5b75
14 changed files with 454 additions and 437 deletions
40
flake.nix
40
flake.nix
|
@ -58,17 +58,18 @@
|
|||
};
|
||||
};
|
||||
|
||||
outputs = {
|
||||
nixpkgs,
|
||||
nixpkgs-unstable,
|
||||
nixos-unstable,
|
||||
home-manager,
|
||||
emacs-overlay,
|
||||
nur,
|
||||
nix-index-database,
|
||||
disko,
|
||||
...
|
||||
} @ inputs: let
|
||||
outputs =
|
||||
{ nixpkgs
|
||||
, nixpkgs-unstable
|
||||
, nixos-unstable
|
||||
, home-manager
|
||||
, emacs-overlay
|
||||
, nur
|
||||
, nix-index-database
|
||||
, disko
|
||||
, ...
|
||||
} @ inputs:
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
unstable-os = import nixos-unstable pkgs-args;
|
||||
unstable-os-overlay = _final: _prev: {
|
||||
|
@ -84,8 +85,8 @@
|
|||
emacs-overlay.overlay
|
||||
];
|
||||
pkgs-args = {
|
||||
system = system;
|
||||
overlays = overlays;
|
||||
inherit system;
|
||||
inherit overlays;
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
};
|
||||
|
@ -108,9 +109,10 @@
|
|||
inherit inputs;
|
||||
inherit system;
|
||||
};
|
||||
in {
|
||||
in
|
||||
{
|
||||
formatter = {
|
||||
${system} = pkgs.alejandra;
|
||||
${system} = pkgs.nixpkgs-fmt;
|
||||
};
|
||||
diskoConfigurations = {
|
||||
nixos-pulse = import ./systems/nixos-pulse/disko.nix;
|
||||
|
@ -125,9 +127,11 @@
|
|||
{
|
||||
_module = { inherit args; };
|
||||
targets.genericLinux.enable = true;
|
||||
programs.bash.enable = true;
|
||||
programs.zsh.enable = true;
|
||||
programs.home-manager.enable = true;
|
||||
programs = {
|
||||
bash.enable = true;
|
||||
zsh.enable = true;
|
||||
home-manager.enable = true;
|
||||
};
|
||||
}
|
||||
]
|
||||
++ hmModules;
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
inputs,
|
||||
...
|
||||
}: let
|
||||
{ lib
|
||||
, pkgs
|
||||
, config
|
||||
, inputs
|
||||
, ...
|
||||
}:
|
||||
let
|
||||
doomemacsSrc = builtins.fetchGit {
|
||||
url = "https://github.com/doomemacs/doomemacs";
|
||||
ref = "master";
|
||||
|
@ -14,12 +14,14 @@
|
|||
personalDoomConfSrc = builtins.fetchGit {
|
||||
url = "https://git.vlt81.de/tristan/doom";
|
||||
ref = "main";
|
||||
rev = "e6d22f794c68a5f3ac56861e7e2ed6642cdef16a";
|
||||
rev = "c6558ab65f106628a3bdb890df935bb7965edd95";
|
||||
};
|
||||
in {
|
||||
in
|
||||
{
|
||||
xdg.enable = true;
|
||||
|
||||
programs.alacritty = {
|
||||
programs = {
|
||||
alacritty = {
|
||||
enable = true;
|
||||
settings = {
|
||||
window.opacity = 0.88;
|
||||
|
@ -30,12 +32,12 @@ in {
|
|||
};
|
||||
};
|
||||
|
||||
programs.starship = {
|
||||
starship = {
|
||||
enable = true;
|
||||
package = pkgs.unstable-pkgs.starship;
|
||||
};
|
||||
|
||||
programs.fish = {
|
||||
fish = {
|
||||
enable = true;
|
||||
package = pkgs.unstable-pkgs.fish;
|
||||
|
||||
|
@ -55,7 +57,7 @@ in {
|
|||
};
|
||||
};
|
||||
|
||||
programs.git = {
|
||||
git = {
|
||||
enable = true;
|
||||
userName = "Tristan Druyen";
|
||||
userEmail = "tristan@vault81.de";
|
||||
|
@ -72,12 +74,12 @@ in {
|
|||
package = pkgs.unstable-pkgs.git;
|
||||
};
|
||||
|
||||
programs.nix-index = {
|
||||
nix-index = {
|
||||
enable = true;
|
||||
enableFishIntegration = true;
|
||||
};
|
||||
|
||||
programs.ssh = {
|
||||
ssh = {
|
||||
enable = true;
|
||||
package = pkgs.unstable-pkgs.openssh;
|
||||
|
||||
|
@ -103,26 +105,29 @@ in {
|
|||
};
|
||||
};
|
||||
|
||||
programs.gpg = {
|
||||
gpg = {
|
||||
enable = true;
|
||||
|
||||
package = pkgs.unstable-pkgs.gnupg;
|
||||
};
|
||||
};
|
||||
|
||||
services.gpg-agent = {
|
||||
services = {
|
||||
gpg-agent = {
|
||||
enable = true;
|
||||
|
||||
enableExtraSocket = true;
|
||||
enableSshSupport = true;
|
||||
};
|
||||
|
||||
services.lorri.enable = true;
|
||||
lorri.enable = true;
|
||||
|
||||
services.emacs = {
|
||||
emacs = {
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
package = pkgs.unstable-pkgs.emacs-unstable-pgtk;
|
||||
};
|
||||
};
|
||||
|
||||
home = {
|
||||
activation.installDoomEmacs = lib.hm.dag.entryAfter [ "writeBoundary" ] ''
|
||||
|
@ -157,15 +162,17 @@ in {
|
|||
gcc
|
||||
imagemagick
|
||||
libtool
|
||||
nil
|
||||
nixpkgs-fmt
|
||||
pandoc
|
||||
python311Full
|
||||
rcm
|
||||
(lib.mkIf (config.services.gpg-agent.enable)
|
||||
(lib.mkIf config.services.gpg-agent.enable
|
||||
pinentry-emacs)
|
||||
(ripgrep.override { withPCRE2 = true; })
|
||||
nil
|
||||
shellcheck
|
||||
shfmt
|
||||
statix
|
||||
texlive.combined.scheme-full
|
||||
tokei
|
||||
wget
|
||||
|
|
|
@ -1,8 +1,7 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
{ config
|
||||
, lib
|
||||
, pkgs
|
||||
, ...
|
||||
}: {
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
|
|
|
@ -1,8 +1,7 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
{ config
|
||||
, lib
|
||||
, pkgs
|
||||
, ...
|
||||
}: {
|
||||
dconf.settings = {
|
||||
"org/virt-manager/virt-manager/connections" = {
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
{ config
|
||||
, pkgs
|
||||
, ...
|
||||
}: {
|
||||
nix = {
|
||||
gc = {
|
||||
|
@ -16,8 +15,6 @@
|
|||
'';
|
||||
};
|
||||
|
||||
services.fwupd.enable = true;
|
||||
|
||||
# locale
|
||||
time.timeZone = "Europe/Berlin";
|
||||
|
||||
|
@ -55,27 +52,29 @@
|
|||
vim # fallback ed
|
||||
];
|
||||
|
||||
# nix convenience
|
||||
services.envfs.enable = true;
|
||||
programs.nix-ld.dev.enable = true;
|
||||
programs.command-not-found.enable = false;
|
||||
programs.nix-index-database.comma.enable = true;
|
||||
###################
|
||||
programs = {
|
||||
nix-ld.dev.enable = true;
|
||||
command-not-found.enable = false;
|
||||
nix-index-database.comma.enable = true;
|
||||
|
||||
programs.fish.enable = true;
|
||||
programs.gnupg.agent = {
|
||||
fish.enable = true;
|
||||
gnupg.agent = {
|
||||
enable = true;
|
||||
enableSSHSupport = true;
|
||||
};
|
||||
};
|
||||
|
||||
services.openssh.enable = true;
|
||||
services = {
|
||||
fwupd.enable = true;
|
||||
|
||||
# For SMB ####
|
||||
services.gvfs.enable = true;
|
||||
services.avahi.enable = true;
|
||||
services.avahi.nssmdns = true;
|
||||
envfs.enable = true;
|
||||
|
||||
openssh.enable = true;
|
||||
|
||||
gvfs.enable = true;
|
||||
avahi.enable = true;
|
||||
avahi.nssmdns = true;
|
||||
};
|
||||
|
||||
# netbios dns
|
||||
networking.firewall.extraCommands = ''iptables -t raw -A OUTPUT -p udp -m udp --dport 137 -j CT --helper netbios-ns'';
|
||||
##############
|
||||
}
|
||||
|
|
|
@ -1,8 +1,7 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
{ config
|
||||
, lib
|
||||
, pkgs
|
||||
, ...
|
||||
}: {
|
||||
programs.dconf.enable = true;
|
||||
|
||||
|
@ -26,8 +25,8 @@
|
|||
(nerdfonts.override { fonts = [ "FiraCode" "DroidSansMono" "NerdFontsSymbolsOnly" ]; })
|
||||
];
|
||||
|
||||
# Desktop env
|
||||
services.xserver = {
|
||||
services = {
|
||||
xserver = {
|
||||
enable = true;
|
||||
layout = "us";
|
||||
xkbVariant = "alt-intl";
|
||||
|
@ -45,13 +44,7 @@
|
|||
# };
|
||||
};
|
||||
};
|
||||
#########################
|
||||
|
||||
## audio
|
||||
sound.enable = true;
|
||||
hardware.bluetooth.enable = true;
|
||||
hardware.pulseaudio.enable = false;
|
||||
services.pipewire = {
|
||||
pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
|
@ -62,14 +55,21 @@
|
|||
|
||||
## printing
|
||||
|
||||
services.printing.enable = true;
|
||||
services.printing.drivers = with pkgs; [
|
||||
printing = {
|
||||
enable = true;
|
||||
drivers = with pkgs; [
|
||||
gutenprint
|
||||
gutenprintBin
|
||||
hplipWithPlugin
|
||||
brlaser
|
||||
brgenml1cupswrapper
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
## audio
|
||||
sound.enable = true;
|
||||
hardware.bluetooth.enable = true;
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
cifs-utils
|
||||
|
|
|
@ -1,8 +1,7 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
{ config
|
||||
, lib
|
||||
, pkgs
|
||||
, ...
|
||||
}: {
|
||||
networking.networkmanager.enable = true;
|
||||
networking.nameservers = [
|
||||
|
@ -12,7 +11,8 @@
|
|||
"2a07:a8c1::#921984.dns.nextdns.io"
|
||||
];
|
||||
|
||||
services.resolved = {
|
||||
services = {
|
||||
resolved = {
|
||||
enable = true;
|
||||
dnssec = "true";
|
||||
domains = [ "~." ];
|
||||
|
@ -22,12 +22,13 @@
|
|||
'';
|
||||
};
|
||||
|
||||
services.tailscale = {
|
||||
tailscale = {
|
||||
enable = true;
|
||||
useRoutingFeatures = "both";
|
||||
};
|
||||
|
||||
services.mozillavpn = {
|
||||
mozillavpn = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,8 +1,7 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
{ config
|
||||
, lib
|
||||
, pkgs
|
||||
, ...
|
||||
}: {
|
||||
environment.systemPackages = with pkgs.unstable-os; [
|
||||
virtiofsd
|
||||
|
|
|
@ -1,11 +1,10 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
system,
|
||||
inputs,
|
||||
...
|
||||
{ config
|
||||
, lib
|
||||
, pkgs
|
||||
, modulesPath
|
||||
, system
|
||||
, inputs
|
||||
, ...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
|
@ -70,11 +69,29 @@
|
|||
};
|
||||
};
|
||||
|
||||
systemd = {
|
||||
services = {
|
||||
# This manually configures the automatically created network-adresses service to be more flexible
|
||||
# regarding booting without the the device being available on boot
|
||||
# It prevents slow timeouts & errors on boot while preserving Plug & Play ability
|
||||
systemd.services.network-addresses-enp5s0f4u1u1c2.unitConfig.ConditionPathExists = "/sys/class/net/enp5s0f4u1u1c2";
|
||||
systemd.services.network-addresses-enp5s0f4u1u1c2.unitConfig.BindsTo = lib.mkForce null;
|
||||
network-addresses-enp5s0f4u1u1c2.unitConfig = {
|
||||
ConditionPathExists = "/sys/class/net/enp5s0f4u1u1c2";
|
||||
BindsTo = lib.mkForce null;
|
||||
};
|
||||
|
||||
powertop.postStart = ''
|
||||
HIDDEVICES=$(ls /sys/bus/usb/drivers/usbhid | grep -oE '^[0-9]+-[0-9\.]+' | sort -u)
|
||||
for i in $HIDDEVICES; do
|
||||
echo -n "Enabling " | cat - /sys/bus/usb/devices/$i/product
|
||||
echo 'on' > /sys/bus/usb/devices/$i/power/control
|
||||
done
|
||||
'';
|
||||
};
|
||||
|
||||
tmpfiles.rules = [
|
||||
"L+ /opt/rocm/hip - - - - ${pkgs.hip}"
|
||||
];
|
||||
};
|
||||
services.udev.extraRules = ''
|
||||
ACTION=="add", KERNEL=="enp5s0f4u1u1c2", TAG+="systemd", ENV{SYSTEMD_WANTS}="network-addresses-enp5s0f4u1u1c2.service"
|
||||
ACTION=="remove", KERNEL=="enp5s0f4u1u1c2", RUN+="${pkgs.systemd}/bin/systemctl stop network-addresses-enp5s0f4u1u1c2.service"
|
||||
|
@ -82,13 +99,6 @@
|
|||
|
||||
# energy saving stuff
|
||||
powerManagement.powertop.enable = true;
|
||||
systemd.services.powertop.postStart = ''
|
||||
HIDDEVICES=$(ls /sys/bus/usb/drivers/usbhid | grep -oE '^[0-9]+-[0-9\.]+' | sort -u)
|
||||
for i in $HIDDEVICES; do
|
||||
echo -n "Enabling " | cat - /sys/bus/usb/devices/$i/product
|
||||
echo 'on' > /sys/bus/usb/devices/$i/power/control
|
||||
done
|
||||
'';
|
||||
|
||||
hardware = {
|
||||
tuxedo-control-center = {
|
||||
|
@ -107,9 +117,5 @@
|
|||
cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
};
|
||||
|
||||
systemd.tmpfiles.rules = [
|
||||
"L+ /opt/rocm/hip - - - - ${pkgs.hip}"
|
||||
];
|
||||
|
||||
zramSwap.enable = true;
|
||||
}
|
||||
|
|
|
@ -1,9 +1,8 @@
|
|||
{
|
||||
pkgs,
|
||||
config,
|
||||
inputs,
|
||||
system,
|
||||
...
|
||||
{ pkgs
|
||||
, config
|
||||
, inputs
|
||||
, system
|
||||
, ...
|
||||
}: {
|
||||
users.users.tester = {
|
||||
isNormalUser = true;
|
||||
|
|
|
@ -1,16 +1,17 @@
|
|||
{
|
||||
pkgs,
|
||||
config,
|
||||
inputs,
|
||||
system,
|
||||
...
|
||||
}: let
|
||||
{ pkgs
|
||||
, config
|
||||
, inputs
|
||||
, system
|
||||
, ...
|
||||
}:
|
||||
let
|
||||
wallpaper = inputs.nix-wallpaper.packages.${pkgs.system}.default.override {
|
||||
logoSize = 24;
|
||||
preset = "gruvbox-dark-rainbow";
|
||||
};
|
||||
wallpaperPath = "${wallpaper}/share/wallpapers/nixos-wallpaper.png";
|
||||
in {
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
../home-mods/dev
|
||||
../home-mods/firefox
|
||||
|
@ -18,11 +19,12 @@ in {
|
|||
../home-mods/virt
|
||||
];
|
||||
|
||||
home.file.".background".source = wallpaperPath;
|
||||
home.username = "tester";
|
||||
home.homeDirectory = "/home/tester";
|
||||
home = {
|
||||
file.".background".source = wallpaperPath;
|
||||
username = "tester";
|
||||
homeDirectory = "/home/tester";
|
||||
|
||||
home.packages = with pkgs.unstable-pkgs; [
|
||||
packages = with pkgs.unstable-pkgs; [
|
||||
bitwarden
|
||||
brave
|
||||
btop
|
||||
|
@ -39,10 +41,10 @@ in {
|
|||
rustdesk
|
||||
tutanota-desktop
|
||||
signal-desktop
|
||||
statix
|
||||
thunderbird
|
||||
zellij
|
||||
];
|
||||
|
||||
home.stateVersion = "23.05";
|
||||
stateVersion = "23.05";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,16 +1,17 @@
|
|||
{
|
||||
pkgs,
|
||||
config,
|
||||
inputs,
|
||||
system,
|
||||
...
|
||||
}: let
|
||||
{ pkgs
|
||||
, config
|
||||
, inputs
|
||||
, system
|
||||
, ...
|
||||
}:
|
||||
let
|
||||
wallpaper = inputs.nix-wallpaper.packages.${pkgs.system}.default.override {
|
||||
logoSize = 24;
|
||||
preset = "gruvbox-dark-rainbow";
|
||||
};
|
||||
wallpaperPath = "${wallpaper}/share/wallpapers/nixos-wallpaper.png";
|
||||
in {
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
../home-mods/dev
|
||||
../home-mods/firefox
|
||||
|
@ -18,11 +19,12 @@ in {
|
|||
../home-mods/virt
|
||||
];
|
||||
|
||||
home.file.".background".source = wallpaperPath;
|
||||
home.username = "tristand";
|
||||
home.homeDirectory = "/home/tristand";
|
||||
home = {
|
||||
file.".background".source = wallpaperPath;
|
||||
username = "tristand";
|
||||
homeDirectory = "/home/tristand";
|
||||
|
||||
home.packages = with pkgs.unstable-pkgs; [
|
||||
packages = with pkgs.unstable-pkgs; [
|
||||
bitwarden
|
||||
brave
|
||||
btop
|
||||
|
@ -39,10 +41,10 @@ in {
|
|||
rustdesk
|
||||
tutanota-desktop
|
||||
signal-desktop
|
||||
statix
|
||||
thunderbird
|
||||
zellij
|
||||
];
|
||||
|
||||
home.stateVersion = "23.05";
|
||||
stateVersion = "23.05";
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue