Simplify setup and remove some packages
This commit is contained in:
parent
f74599e97d
commit
46fb6f58cc
|
@ -42,7 +42,6 @@ let
|
||||||
};
|
};
|
||||||
on-my-machines = [
|
on-my-machines = [
|
||||||
./roles/on-my-machine.nix
|
./roles/on-my-machine.nix
|
||||||
./roles/accounting.nix
|
|
||||||
./roles/mail.nix
|
./roles/mail.nix
|
||||||
./roles/firefox.nix
|
./roles/firefox.nix
|
||||||
./roles/kassandra.nix
|
./roles/kassandra.nix
|
||||||
|
@ -61,7 +60,6 @@ let
|
||||||
(makeAutostart "kassandra2")
|
(makeAutostart "kassandra2")
|
||||||
(makeAutostart "unlock-ssh")
|
(makeAutostart "unlock-ssh")
|
||||||
./roles/beets.nix
|
./roles/beets.nix
|
||||||
./roles/daily-driver-programs.nix
|
|
||||||
./roles/desktop-items.nix
|
./roles/desktop-items.nix
|
||||||
./roles/desktop.nix
|
./roles/desktop.nix
|
||||||
./roles/git-sign.nix
|
./roles/git-sign.nix
|
||||||
|
@ -73,14 +71,13 @@ let
|
||||||
./roles/mpd.nix
|
./roles/mpd.nix
|
||||||
./roles/pythia.nix
|
./roles/pythia.nix
|
||||||
./roles/research.nix
|
./roles/research.nix
|
||||||
#./roles/night-shutdown.nix
|
./roles/night-shutdown.nix
|
||||||
./roles/tinkering.nix
|
./roles/tinkering.nix
|
||||||
./roles/wallpaper.nix
|
./roles/wallpaper.nix
|
||||||
./roles/zettelkasten.nix
|
./roles/zettelkasten.nix
|
||||||
./roles/kitty.nix
|
./roles/kitty.nix
|
||||||
];
|
];
|
||||||
orgaExtra = [
|
orgaExtra = [
|
||||||
./roles/accounting.nix
|
|
||||||
./roles/mail-client.nix
|
./roles/mail-client.nix
|
||||||
./roles/pythia.nix
|
./roles/pythia.nix
|
||||||
./roles/tinkering.nix
|
./roles/tinkering.nix
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
{pkgs, ...}: {
|
|
||||||
home.packages = builtins.attrValues pkgs.accounting-pkgs;
|
|
||||||
}
|
|
|
@ -1,65 +0,0 @@
|
||||||
{
|
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [./mpv];
|
|
||||||
home.packages = builtins.attrValues rec {
|
|
||||||
zoom = pkgs.zoom-us.overrideAttrs (old: {
|
|
||||||
postFixup =
|
|
||||||
old.postFixup
|
|
||||||
+ ''
|
|
||||||
wrapProgram $out/bin/zoom-us --unset XDG_SESSION_TYPE
|
|
||||||
wrapProgram $out/bin/zoom --unset XDG_SESSION_TYPE
|
|
||||||
'';
|
|
||||||
});
|
|
||||||
mic-check = pkgs.writeShellScriptBin "mic-check" ''
|
|
||||||
echo "Activating loopback!"
|
|
||||||
${pkgs.pulseaudio}/bin/pactl load-module module-loopback
|
|
||||||
echo "Can your hear yourself? Fix audio setup! Then press enter …"
|
|
||||||
read
|
|
||||||
echo "Deactivating loopback!"
|
|
||||||
${pkgs.pulseaudio}/bin/pactl unload-module module-loopback
|
|
||||||
echo "Continuing …"
|
|
||||||
'';
|
|
||||||
|
|
||||||
inherit (pkgs.gnome) nautilus;
|
|
||||||
inherit (pkgs.xorg) xbacklight;
|
|
||||||
inherit
|
|
||||||
(pkgs)
|
|
||||||
# web
|
|
||||||
|
|
||||||
chromium
|
|
||||||
mumble
|
|
||||||
upower
|
|
||||||
speedtest-cli
|
|
||||||
acpi
|
|
||||||
# tools & office
|
|
||||||
|
|
||||||
feh
|
|
||||||
gimp
|
|
||||||
imagemagick
|
|
||||||
libreoffice-fresh
|
|
||||||
xournal
|
|
||||||
musescore
|
|
||||||
handbrake
|
|
||||||
evince
|
|
||||||
abcde
|
|
||||||
beets
|
|
||||||
zbar
|
|
||||||
# media
|
|
||||||
|
|
||||||
ncpamixer
|
|
||||||
pavucontrol
|
|
||||||
playerctl
|
|
||||||
deluge
|
|
||||||
gmpc
|
|
||||||
vlc
|
|
||||||
youtube-dl
|
|
||||||
spotdl
|
|
||||||
ffmpeg
|
|
||||||
syncplay
|
|
||||||
;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -56,7 +56,6 @@
|
||||||
enable = true;
|
enable = true;
|
||||||
escapeTime = 1;
|
escapeTime = 1;
|
||||||
historyLimit = 50000;
|
historyLimit = 50000;
|
||||||
terminal = "screen-256color";
|
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
set -g set-titles on
|
set -g set-titles on
|
||||||
set -g status off
|
set -g status off
|
||||||
|
@ -134,17 +133,47 @@
|
||||||
|
|
||||||
home = {
|
home = {
|
||||||
packages =
|
packages =
|
||||||
builtins.attrValues pkgs.home-pkgs
|
builtins.attrValues {
|
||||||
|
inherit
|
||||||
|
(pkgs)
|
||||||
|
go
|
||||||
|
gdb
|
||||||
|
mpc_cli
|
||||||
|
ncmpcpp
|
||||||
|
shfmt
|
||||||
|
astyle
|
||||||
|
nodejs
|
||||||
|
tasksh
|
||||||
|
magic-wormhole
|
||||||
|
alejandra
|
||||||
|
rustup
|
||||||
|
nix-top
|
||||||
|
ghcWithPackages
|
||||||
|
ghcid
|
||||||
|
matrix-commander
|
||||||
|
upterm
|
||||||
|
lazygit
|
||||||
|
gh
|
||||||
|
ledger
|
||||||
|
aqbanking
|
||||||
|
;
|
||||||
|
inherit (pkgs.haskellPackages) hledger hledger-ui hledger-web;
|
||||||
|
pass-fzf = pkgs.writeShellScriptBin "pass-fzf" (builtins.readFile ./pass-fzf.sh);
|
||||||
|
mytmux = pkgs.writeShellScriptBin "mytmux" ''
|
||||||
|
session=$(${pkgs.tmux}/bin/tmux ls | grep -v attached | head -1 | cut -f1 -d:)
|
||||||
|
if [[ -n $session ]]; then
|
||||||
|
exec ${pkgs.tmux}/bin/tmux attach -t $session;
|
||||||
|
else
|
||||||
|
exec ${pkgs.tmux}/bin/tmux;
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
}
|
||||||
++ [
|
++ [
|
||||||
(
|
(
|
||||||
pkgs.writeShellScriptBin "unlock-ssh" ''
|
pkgs.writeShellScriptBin "unlock-ssh" ''
|
||||||
SSH_ASKPASS="print-ssh-pw" DISPLAY="a" ssh-add < /dev/null
|
SSH_ASKPASS="print-ssh-pw" DISPLAY="a" ssh-add < /dev/null
|
||||||
''
|
''
|
||||||
)
|
)
|
||||||
(
|
|
||||||
pkgs.writeShellScriptBin "print-radicle-pw"
|
|
||||||
"pass show etc/radicle/${config.m-0.hostName}"
|
|
||||||
)
|
|
||||||
(
|
(
|
||||||
pkgs.writeShellScriptBin "print-ssh-pw"
|
pkgs.writeShellScriptBin "print-ssh-pw"
|
||||||
"pass show eu/m-0/${config.m-0.hostName}.m-0.eu/ssh-key"
|
"pass show eu/m-0/${config.m-0.hostName}.m-0.eu/ssh-key"
|
||||||
|
|
|
@ -1,9 +1,91 @@
|
||||||
{pkgs, ...}: let
|
{pkgs, ...}: let
|
||||||
inherit (import ../../lib) colors;
|
inherit (import ../../lib) colors;
|
||||||
in {
|
in {
|
||||||
|
imports = [./mpv];
|
||||||
m-0.colors = colors;
|
m-0.colors = colors;
|
||||||
home = {
|
home = {
|
||||||
packages = builtins.attrValues pkgs.desktop-pkgs;
|
packages = builtins.attrValues rec {
|
||||||
|
zoom = pkgs.zoom-us.overrideAttrs (old: {
|
||||||
|
postFixup =
|
||||||
|
old.postFixup
|
||||||
|
+ ''
|
||||||
|
wrapProgram $out/bin/zoom-us --unset XDG_SESSION_TYPE
|
||||||
|
wrapProgram $out/bin/zoom --unset XDG_SESSION_TYPE
|
||||||
|
'';
|
||||||
|
});
|
||||||
|
mic-check = pkgs.writeShellScriptBin "mic-check" ''
|
||||||
|
echo "Activating loopback!"
|
||||||
|
${pkgs.pulseaudio}/bin/pactl load-module module-loopback
|
||||||
|
echo "Can your hear yourself? Fix audio setup! Then press enter …"
|
||||||
|
read
|
||||||
|
echo "Deactivating loopback!"
|
||||||
|
${pkgs.pulseaudio}/bin/pactl unload-module module-loopback
|
||||||
|
echo "Continuing …"
|
||||||
|
'';
|
||||||
|
|
||||||
|
inherit (pkgs.gnome) nautilus;
|
||||||
|
inherit (pkgs.xorg) xbacklight;
|
||||||
|
inherit
|
||||||
|
(pkgs)
|
||||||
|
# web
|
||||||
|
|
||||||
|
chromium
|
||||||
|
mumble
|
||||||
|
upower
|
||||||
|
speedtest-cli
|
||||||
|
acpi
|
||||||
|
# tools & office
|
||||||
|
|
||||||
|
feh
|
||||||
|
gimp
|
||||||
|
imagemagick
|
||||||
|
libreoffice-fresh
|
||||||
|
xournal
|
||||||
|
musescore
|
||||||
|
handbrake
|
||||||
|
evince
|
||||||
|
abcde
|
||||||
|
beets
|
||||||
|
zbar
|
||||||
|
# media
|
||||||
|
|
||||||
|
ncpamixer
|
||||||
|
pavucontrol
|
||||||
|
playerctl
|
||||||
|
deluge
|
||||||
|
gmpc
|
||||||
|
vlc
|
||||||
|
youtube-dl
|
||||||
|
spotdl
|
||||||
|
ffmpeg
|
||||||
|
syncplay
|
||||||
|
esphome
|
||||||
|
# To flash devices
|
||||||
|
|
||||||
|
esptool
|
||||||
|
# provides esptool.py
|
||||||
|
|
||||||
|
lm_sensors
|
||||||
|
xwayland
|
||||||
|
xdg_utils
|
||||||
|
libnotify
|
||||||
|
kassandra
|
||||||
|
shotcut
|
||||||
|
audacity
|
||||||
|
paprefs
|
||||||
|
wl-clipboard
|
||||||
|
dconf2nix
|
||||||
|
chrysalis
|
||||||
|
;
|
||||||
|
inherit
|
||||||
|
(pkgs.gnome)
|
||||||
|
dconf-editor
|
||||||
|
gnome-tweaks
|
||||||
|
adwaita-icon-theme
|
||||||
|
gnome-session
|
||||||
|
;
|
||||||
|
};
|
||||||
|
|
||||||
file.".zprofile".text = ". $HOME/.nix-profile/etc/profile.d/hm-session-vars.sh";
|
file.".zprofile".text = ". $HOME/.nix-profile/etc/profile.d/hm-session-vars.sh";
|
||||||
};
|
};
|
||||||
gtk = {
|
gtk = {
|
||||||
|
|
|
@ -17,10 +17,16 @@
|
||||||
removable-drive-menu
|
removable-drive-menu
|
||||||
highlight-focus
|
highlight-focus
|
||||||
mouse-follows-focus
|
mouse-follows-focus
|
||||||
executor
|
|
||||||
gtile
|
gtile
|
||||||
caffeine
|
caffeine
|
||||||
;
|
;
|
||||||
|
executor = pkgs.gnomeExtensions.executor.overrideAttrs (old: {
|
||||||
|
postInstall =
|
||||||
|
(old.postInstall or "")
|
||||||
|
+ ''
|
||||||
|
substituteInPlace $out/share/gnome-shell/extensions/executor@raujonas.github.io/extension.js --replace "'/bin/bash'" "'bash'"
|
||||||
|
'';
|
||||||
|
});
|
||||||
};
|
};
|
||||||
inherit (lib.hm.gvariant) mkTuple;
|
inherit (lib.hm.gvariant) mkTuple;
|
||||||
in {
|
in {
|
||||||
|
|
|
@ -7,6 +7,5 @@
|
||||||
home = {
|
home = {
|
||||||
username = "maralorn";
|
username = "maralorn";
|
||||||
homeDirectory = "/home/maralorn";
|
homeDirectory = "/home/maralorn";
|
||||||
packages = builtins.attrValues pkgs.my-home-pkgs;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,6 +19,7 @@ in {
|
||||||
../../roles/boot-key.nix
|
../../roles/boot-key.nix
|
||||||
../../roles/standalone
|
../../roles/standalone
|
||||||
../../roles/metal.nix
|
../../roles/metal.nix
|
||||||
|
../../roles/display-server.nix
|
||||||
(import ../../roles/monitoring/folder-size-exporter.nix {
|
(import ../../roles/monitoring/folder-size-exporter.nix {
|
||||||
folders = [
|
folders = [
|
||||||
"/"
|
"/"
|
||||||
|
@ -69,29 +70,11 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
programs = {
|
|
||||||
adb.enable = true;
|
|
||||||
sway.enable = true;
|
|
||||||
seahorse.enable = lib.mkForce false;
|
|
||||||
dconf.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
security.rtkit.enable = true;
|
|
||||||
services = {
|
services = {
|
||||||
pipewire = {
|
|
||||||
enable = lib.mkForce false;
|
|
||||||
};
|
|
||||||
fwupd.enable = true;
|
|
||||||
upower.enable = true;
|
|
||||||
printing = {
|
|
||||||
enable = true;
|
|
||||||
drivers = [pkgs.gutenprint pkgs.hplip];
|
|
||||||
};
|
|
||||||
udev.extraRules = ''
|
udev.extraRules = ''
|
||||||
ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="intel_backlight", RUN+="${pkgs.coreutils}/bin/chgrp video /sys/class/backlight/%k/brightness"
|
ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="intel_backlight", RUN+="${pkgs.coreutils}/bin/chgrp video /sys/class/backlight/%k/brightness"
|
||||||
ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="intel_backlight", RUN+="${pkgs.coreutils}/bin/chmod g+w /sys/class/backlight/%k/brightness"
|
ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="intel_backlight", RUN+="${pkgs.coreutils}/bin/chmod g+w /sys/class/backlight/%k/brightness"
|
||||||
'';
|
'';
|
||||||
fstrim.enable = true;
|
|
||||||
snapper = {
|
snapper = {
|
||||||
configs.home = {
|
configs.home = {
|
||||||
subvolume = "/home";
|
subvolume = "/home";
|
||||||
|
@ -121,31 +104,6 @@ in {
|
||||||
key = pkgs.privatePath "syncthing/apollo/key.pem";
|
key = pkgs.privatePath "syncthing/apollo/key.pem";
|
||||||
}
|
}
|
||||||
// syncthing.declarativeWith ["hera" "zeus" "pegasus"] "/home/maralorn/media";
|
// syncthing.declarativeWith ["hera" "zeus" "pegasus"] "/home/maralorn/media";
|
||||||
xserver = {
|
|
||||||
enable = true;
|
|
||||||
displayManager = {
|
|
||||||
autoLogin = {
|
|
||||||
enable = true;
|
|
||||||
user = "maralorn";
|
|
||||||
};
|
|
||||||
gdm.enable = true;
|
|
||||||
};
|
|
||||||
desktopManager.gnome.enable = true;
|
|
||||||
};
|
|
||||||
gnome = {
|
|
||||||
evolution-data-server.enable = lib.mkForce false;
|
|
||||||
gnome-keyring.enable = lib.mkForce false;
|
|
||||||
at-spi2-core.enable = lib.mkForce false;
|
|
||||||
tracker.enable = false;
|
|
||||||
tracker-miners.enable = false;
|
|
||||||
gnome-online-miners.enable = lib.mkForce false;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
boot.kernel.sysctl."fs.inotify.max_user_watches" = 204800;
|
|
||||||
console.keyMap = "neo";
|
|
||||||
|
|
||||||
sound.enable = true;
|
|
||||||
|
|
||||||
system.stateVersion = "19.09";
|
system.stateVersion = "19.09";
|
||||||
}
|
}
|
||||||
|
|
|
@ -125,14 +125,11 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
programs = {
|
programs = {
|
||||||
ssh = {
|
ssh = {
|
||||||
startAgent = true;
|
startAgent = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
security.rtkit.enable = true;
|
|
||||||
hardware.printers = {
|
hardware.printers = {
|
||||||
ensureDefaultPrinter = "Klio";
|
ensureDefaultPrinter = "Klio";
|
||||||
ensurePrinters = [
|
ensurePrinters = [
|
||||||
|
@ -150,7 +147,6 @@ in {
|
||||||
path = "/backup/hera-borg-repo";
|
path = "/backup/hera-borg-repo";
|
||||||
authorizedKeys = pkgs.privateValue ["dummy-key"] "backup-ssh-keys";
|
authorizedKeys = pkgs.privateValue ["dummy-key"] "backup-ssh-keys";
|
||||||
};
|
};
|
||||||
fwupd.enable = true;
|
|
||||||
printing = {
|
printing = {
|
||||||
enable = true;
|
enable = true;
|
||||||
allowFrom = ["all"];
|
allowFrom = ["all"];
|
||||||
|
@ -194,9 +190,6 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
#boot.kernel.sysctl."fs.inotify.max_user_watches" = 204800;
|
|
||||||
console.keyMap = "neo";
|
|
||||||
|
|
||||||
# This value determines the NixOS release from which the default
|
# This value determines the NixOS release from which the default
|
||||||
# settings for stateful data, like file locations and database versions
|
# settings for stateful data, like file locations and database versions
|
||||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||||
|
|
|
@ -122,7 +122,6 @@ in {
|
||||||
}
|
}
|
||||||
// syncthing.declarativeWith ["apollo" "zeus" "pegasus"] "/media";
|
// syncthing.declarativeWith ["apollo" "zeus" "pegasus"] "/media";
|
||||||
};
|
};
|
||||||
boot.kernel.sysctl = {"fs.inotify.max_user_watches" = 204800;};
|
|
||||||
systemd.tmpfiles.rules = ["Z /media 0770 maralorn nginx - -"];
|
systemd.tmpfiles.rules = ["Z /media 0770 maralorn nginx - -"];
|
||||||
nix.sshServe = {
|
nix.sshServe = {
|
||||||
protocol = "ssh-ng";
|
protocol = "ssh-ng";
|
||||||
|
|
|
@ -18,6 +18,7 @@ in {
|
||||||
../../roles/fonts.nix
|
../../roles/fonts.nix
|
||||||
../../roles/earlyoom.nix
|
../../roles/earlyoom.nix
|
||||||
../../roles/metal.nix
|
../../roles/metal.nix
|
||||||
|
../../roles/display-server.nix
|
||||||
#../../roles/boot-key.nix
|
#../../roles/boot-key.nix
|
||||||
../../roles/standalone
|
../../roles/standalone
|
||||||
(vpn "zeus")
|
(vpn "zeus")
|
||||||
|
@ -74,7 +75,7 @@ in {
|
||||||
"Z /home/maralorn - maralorn users - -"
|
"Z /home/maralorn - maralorn users - -"
|
||||||
"d /disk/volatile/maralorn 700 maralorn users - -"
|
"d /disk/volatile/maralorn 700 maralorn users - -"
|
||||||
"d /disk/persist/bluetooth - - - - -"
|
"d /disk/persist/bluetooth - - - - -"
|
||||||
"d /disk/persist/minecraft 700 minecraft minecraft - -"
|
# "d /disk/persist/minecraft 700 minecraft minecraft - -"
|
||||||
"d /var/lib/misc 755 - - - -"
|
"d /var/lib/misc 755 - - - -"
|
||||||
"L+ /root/.ssh - - - - /disk/persist/root/.ssh"
|
"L+ /root/.ssh - - - - /disk/persist/root/.ssh"
|
||||||
];
|
];
|
||||||
|
@ -144,23 +145,7 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
programs = {
|
|
||||||
seahorse.enable = lib.mkForce false;
|
|
||||||
dconf.enable = true;
|
|
||||||
adb.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
security.rtkit.enable = true;
|
|
||||||
boot.kernelPackages = pkgs.linuxPackages_testing;
|
|
||||||
services = {
|
services = {
|
||||||
pipewire.enable = lib.mkForce false;
|
|
||||||
fwupd.enable = true;
|
|
||||||
printing = {
|
|
||||||
enable = true;
|
|
||||||
clientConf = "ServerName fluffy.lo.m-0.eu";
|
|
||||||
};
|
|
||||||
fstrim.enable = true;
|
|
||||||
snapper = {
|
snapper = {
|
||||||
configs.persist = {
|
configs.persist = {
|
||||||
subvolume = "/disk/persist";
|
subvolume = "/disk/persist";
|
||||||
|
@ -189,45 +174,19 @@ in {
|
||||||
configDir = "/disk/persist/syncthing";
|
configDir = "/disk/persist/syncthing";
|
||||||
}
|
}
|
||||||
// syncthing.declarativeWith ["hera" "apollo" "pegasus"] "/disk/persist/maralorn/media";
|
// syncthing.declarativeWith ["hera" "apollo" "pegasus"] "/disk/persist/maralorn/media";
|
||||||
xserver = {
|
#minecraft-server = {
|
||||||
enable = true;
|
# enable = true;
|
||||||
displayManager = {
|
# openFirewall = true;
|
||||||
autoLogin = {
|
# eula = true;
|
||||||
enable = true;
|
# dataDir = "/disk/persist/minecraft";
|
||||||
user = "maralorn";
|
#};
|
||||||
};
|
|
||||||
gdm.enable = true;
|
|
||||||
};
|
|
||||||
desktopManager.gnome.enable = true;
|
|
||||||
};
|
|
||||||
gnome = {
|
|
||||||
evolution-data-server.enable = lib.mkForce false;
|
|
||||||
gnome-keyring.enable = lib.mkForce false;
|
|
||||||
at-spi2-core.enable = lib.mkForce false;
|
|
||||||
tracker.enable = false;
|
|
||||||
tracker-miners.enable = false;
|
|
||||||
gnome-online-miners.enable = lib.mkForce false;
|
|
||||||
};
|
|
||||||
minecraft-server = {
|
|
||||||
enable = true;
|
|
||||||
openFirewall = true;
|
|
||||||
eula = true;
|
|
||||||
dataDir = "/disk/persist/minecraft";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
boot.kernel.sysctl."fs.inotify.max_user_watches" = 204800;
|
|
||||||
console.keyMap = "neo";
|
|
||||||
|
|
||||||
sound.enable = true;
|
|
||||||
hardware = {
|
hardware = {
|
||||||
opengl = {
|
opengl = {
|
||||||
enable = true;
|
enable = true;
|
||||||
driSupport32Bit = true; # for gw2
|
driSupport32Bit = true; # for gw2
|
||||||
};
|
};
|
||||||
pulseaudio = {
|
pulseaudio = {
|
||||||
package = pkgs.pulseaudioFull;
|
|
||||||
enable = true;
|
|
||||||
support32Bit = true;
|
support32Bit = true;
|
||||||
tcp = {
|
tcp = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -235,6 +194,5 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
system.stateVersion = "21.05";
|
system.stateVersion = "21.05";
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,6 +48,65 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
environment = {
|
environment = {
|
||||||
|
systemPackages = builtins.attrValues {
|
||||||
|
inherit
|
||||||
|
(pkgs)
|
||||||
|
gnumake
|
||||||
|
mkpasswd
|
||||||
|
file
|
||||||
|
wget
|
||||||
|
curl
|
||||||
|
wireguard-tools
|
||||||
|
gnupg
|
||||||
|
bind
|
||||||
|
liboping
|
||||||
|
psmisc
|
||||||
|
unzip
|
||||||
|
rename
|
||||||
|
whois
|
||||||
|
lsof
|
||||||
|
parted
|
||||||
|
python3
|
||||||
|
binutils
|
||||||
|
ntfsprogs
|
||||||
|
ventoy-bin
|
||||||
|
htop
|
||||||
|
helix
|
||||||
|
btop
|
||||||
|
tree
|
||||||
|
pwgen
|
||||||
|
borgbackup
|
||||||
|
inotifyTools
|
||||||
|
direnv
|
||||||
|
socat
|
||||||
|
nmap
|
||||||
|
ncdu
|
||||||
|
tcpdump
|
||||||
|
tmux
|
||||||
|
tig
|
||||||
|
exa
|
||||||
|
fzf
|
||||||
|
fd
|
||||||
|
sd
|
||||||
|
bat
|
||||||
|
ripgrep
|
||||||
|
ranger
|
||||||
|
pass
|
||||||
|
sshuttle
|
||||||
|
vnstat
|
||||||
|
entr
|
||||||
|
libargon2
|
||||||
|
mblaze
|
||||||
|
niv
|
||||||
|
compsize
|
||||||
|
mediainfo
|
||||||
|
asciinema
|
||||||
|
nix-output-monitor
|
||||||
|
jq
|
||||||
|
home-manager
|
||||||
|
;
|
||||||
|
inherit (pkgs.python3Packages) qrcode;
|
||||||
|
};
|
||||||
etc =
|
etc =
|
||||||
lib.mapAttrs'
|
lib.mapAttrs'
|
||||||
(name: value: lib.nameValuePair "nix-path/${name}" {source = value;})
|
(name: value: lib.nameValuePair "nix-path/${name}" {source = value;})
|
||||||
|
|
47
nixos/roles/display-server.nix
Normal file
47
nixos/roles/display-server.nix
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
adb.enable = true;
|
||||||
|
seahorse.enable = lib.mkForce false;
|
||||||
|
dconf.enable = true;
|
||||||
|
};
|
||||||
|
services = {
|
||||||
|
udev.packages = [pkgs.chrysalis];
|
||||||
|
pipewire.enable = lib.mkForce false;
|
||||||
|
printing = {
|
||||||
|
enable = true;
|
||||||
|
clientConf = "ServerName fluffy.lo.m-0.eu";
|
||||||
|
};
|
||||||
|
xserver = {
|
||||||
|
enable = true;
|
||||||
|
displayManager = {
|
||||||
|
autoLogin = {
|
||||||
|
enable = true;
|
||||||
|
user = "maralorn";
|
||||||
|
};
|
||||||
|
gdm.enable = true;
|
||||||
|
};
|
||||||
|
desktopManager.gnome.enable = true;
|
||||||
|
};
|
||||||
|
gnome = {
|
||||||
|
evolution-data-server.enable = lib.mkForce false;
|
||||||
|
gnome-keyring.enable = lib.mkForce false;
|
||||||
|
at-spi2-core.enable = lib.mkForce false;
|
||||||
|
tracker.enable = false;
|
||||||
|
tracker-miners.enable = false;
|
||||||
|
gnome-online-miners.enable = lib.mkForce false;
|
||||||
|
core-utilities.enable = lib.mkForce false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
environment.gnome.excludePackages = [pkgs.orca pkgs.gnome-tour];
|
||||||
|
sound.enable = true;
|
||||||
|
hardware = {
|
||||||
|
pulseaudio = {
|
||||||
|
package = pkgs.pulseaudioFull;
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -20,8 +20,8 @@
|
||||||
cd ${repo}
|
cd ${repo}
|
||||||
export PATH=/run/current-system/sw/bin:$PATH
|
export PATH=/run/current-system/sw/bin:$PATH
|
||||||
export ANDROID_HOME=${pkgs.androidsdk_9_0}/libexec/android-sdk
|
export ANDROID_HOME=${pkgs.androidsdk_9_0}/libexec/android-sdk
|
||||||
fdroid publish
|
${pkgs.fdroidserver}/bin/fdroid publish
|
||||||
fdroid update
|
${pkgs.fdroidserver}/bin/fdroid update
|
||||||
''
|
''
|
||||||
}";
|
}";
|
||||||
target = name: ''
|
target = name: ''
|
||||||
|
|
|
@ -1,4 +1,10 @@
|
||||||
{pkgs, ...}: {
|
{pkgs, ...}: {
|
||||||
boot.kernelParams = ["mitigations=off"];
|
boot.kernelParams = ["mitigations=off"];
|
||||||
services.udev.packages = [pkgs.chrysalis];
|
console.keyMap = "neo";
|
||||||
|
security.rtkit.enable = true;
|
||||||
|
services = {
|
||||||
|
fwupd.enable = true;
|
||||||
|
upower.enable = true;
|
||||||
|
fstrim.enable = true;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,6 +13,7 @@
|
||||||
configurationLimit = 5;
|
configurationLimit = 5;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
kernel.sysctl."fs.inotify.max_user_watches" = 204800;
|
||||||
};
|
};
|
||||||
|
|
||||||
security.sudo.extraConfig = "\n Defaults timestamp_type=global, timestamp_timeout=15\n ";
|
security.sudo.extraConfig = "\n Defaults timestamp_type=global, timestamp_timeout=15\n ";
|
||||||
|
@ -29,16 +30,15 @@
|
||||||
|
|
||||||
environment = {
|
environment = {
|
||||||
# Put these into an extra file so the essential packages can also be included on non selfadminstrated systems from home-manager
|
# Put these into an extra file so the essential packages can also be included on non selfadminstrated systems from home-manager
|
||||||
systemPackages = builtins.attrValues ({
|
systemPackages = builtins.attrValues {
|
||||||
inherit
|
inherit
|
||||||
(import ../../../lib/update-system.nix {
|
(import ../../../lib/update-system.nix {
|
||||||
inherit pkgs;
|
inherit pkgs;
|
||||||
inherit (config.system.build) nixos-rebuild;
|
inherit (config.system.build) nixos-rebuild;
|
||||||
})
|
})
|
||||||
update-system
|
update-system
|
||||||
;
|
;
|
||||||
}
|
};
|
||||||
// pkgs.system-pkgs);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
programs = {
|
programs = {
|
||||||
|
|
|
@ -23,27 +23,13 @@ rec {
|
||||||
cabal-fmt
|
cabal-fmt
|
||||||
stack
|
stack
|
||||||
ghcid
|
ghcid
|
||||||
ghcide
|
|
||||||
iCalendar
|
|
||||||
pretty-simple
|
|
||||||
stm-containers
|
|
||||||
streamly
|
|
||||||
haskell-language-server
|
haskell-language-server
|
||||||
cabal-install
|
cabal-install
|
||||||
dhall
|
dhall
|
||||||
taskwarrior
|
|
||||||
pandoc
|
pandoc
|
||||||
hlint
|
hlint
|
||||||
cabal2nix
|
cabal2nix
|
||||||
weeder
|
|
||||||
reflex-dom
|
|
||||||
password
|
|
||||||
optics
|
|
||||||
shh-extras
|
|
||||||
hmatrix
|
|
||||||
postgresql-simple
|
|
||||||
nix-derivation
|
nix-derivation
|
||||||
req
|
|
||||||
witch
|
witch
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,164 +0,0 @@
|
||||||
self: super: {
|
|
||||||
# pkgs assumed to be present on a non nixos host
|
|
||||||
core-system-pkgs = {
|
|
||||||
inherit
|
|
||||||
(self)
|
|
||||||
gitFull
|
|
||||||
gnumake
|
|
||||||
mkpasswd
|
|
||||||
file
|
|
||||||
wget
|
|
||||||
curl
|
|
||||||
wireguard-tools
|
|
||||||
gnupg
|
|
||||||
mutt
|
|
||||||
bind
|
|
||||||
liboping
|
|
||||||
psmisc
|
|
||||||
unzip
|
|
||||||
rename
|
|
||||||
whois
|
|
||||||
lsof
|
|
||||||
parted
|
|
||||||
python3
|
|
||||||
binutils
|
|
||||||
ntfsprogs
|
|
||||||
neovim
|
|
||||||
ventoy-bin
|
|
||||||
;
|
|
||||||
};
|
|
||||||
|
|
||||||
extra-system-pkgs = {
|
|
||||||
inherit (self.python3Packages) qrcode;
|
|
||||||
inherit
|
|
||||||
(self)
|
|
||||||
htop
|
|
||||||
helix
|
|
||||||
btop
|
|
||||||
tree
|
|
||||||
pwgen
|
|
||||||
borgbackup
|
|
||||||
inotifyTools
|
|
||||||
direnv
|
|
||||||
socat
|
|
||||||
nmap
|
|
||||||
ncdu
|
|
||||||
tcpdump
|
|
||||||
tmux
|
|
||||||
tig
|
|
||||||
exa
|
|
||||||
fzf
|
|
||||||
fd
|
|
||||||
bat
|
|
||||||
ripgrep
|
|
||||||
ranger
|
|
||||||
pass
|
|
||||||
sshuttle
|
|
||||||
vnstat
|
|
||||||
entr
|
|
||||||
libargon2
|
|
||||||
mblaze
|
|
||||||
niv
|
|
||||||
compsize
|
|
||||||
mediainfo
|
|
||||||
asciinema
|
|
||||||
gomuks
|
|
||||||
nix-output-monitor
|
|
||||||
fdroidserver
|
|
||||||
jq
|
|
||||||
;
|
|
||||||
};
|
|
||||||
|
|
||||||
my-home-pkgs = {
|
|
||||||
print215 = super.writeShellScriptBin "print215" ''
|
|
||||||
scp "$@" ag-forward:
|
|
||||||
ssh ag-forward lpr -Zduplex -r "$@"
|
|
||||||
'';
|
|
||||||
print215single = super.writeShellScriptBin "print215single" ''
|
|
||||||
scp "$@" ag-forward:
|
|
||||||
ssh ag-forward lpr -r "$@"
|
|
||||||
'';
|
|
||||||
mytmux = super.writeShellScriptBin "mytmux" ''
|
|
||||||
session=$(${self.tmux}/bin/tmux ls | grep -v attached | head -1 | cut -f1 -d:)
|
|
||||||
if [[ -n $session ]]; then
|
|
||||||
exec ${self.tmux}/bin/tmux attach -t $session;
|
|
||||||
else
|
|
||||||
exec ${self.tmux}/bin/tmux;
|
|
||||||
fi
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
desktop-pkgs = {
|
|
||||||
inherit
|
|
||||||
(self)
|
|
||||||
esphome
|
|
||||||
# To flash devices
|
|
||||||
|
|
||||||
esptool
|
|
||||||
# provides esptool.py
|
|
||||||
|
|
||||||
dconf
|
|
||||||
lm_sensors
|
|
||||||
xwayland
|
|
||||||
xdg_utils
|
|
||||||
libnotify
|
|
||||||
kassandra
|
|
||||||
shotcut
|
|
||||||
mlt
|
|
||||||
audacity
|
|
||||||
paprefs
|
|
||||||
wl-clipboard
|
|
||||||
dconf2nix
|
|
||||||
chrysalis
|
|
||||||
;
|
|
||||||
executor = self.gnomeExtensions.executor.overrideAttrs (old: {
|
|
||||||
postInstall =
|
|
||||||
(old.postInstall or "")
|
|
||||||
+ ''
|
|
||||||
substituteInPlace $out/share/gnome-shell/extensions/executor@raujonas.github.io/extension.js --replace "'/bin/bash'" "'bash'"
|
|
||||||
'';
|
|
||||||
});
|
|
||||||
inherit
|
|
||||||
(self.gnome)
|
|
||||||
dconf-editor
|
|
||||||
gnome-tweaks
|
|
||||||
adwaita-icon-theme
|
|
||||||
gnome-session
|
|
||||||
;
|
|
||||||
};
|
|
||||||
home-pkgs = {
|
|
||||||
inherit
|
|
||||||
(self)
|
|
||||||
go
|
|
||||||
gdb
|
|
||||||
mpc_cli
|
|
||||||
ncmpcpp
|
|
||||||
shfmt
|
|
||||||
astyle
|
|
||||||
nodejs
|
|
||||||
tasksh
|
|
||||||
magic-wormhole
|
|
||||||
alejandra
|
|
||||||
rustup
|
|
||||||
nix-top
|
|
||||||
ghcWithPackages
|
|
||||||
ghcid
|
|
||||||
matrix-commander
|
|
||||||
upterm
|
|
||||||
lazygit
|
|
||||||
gh
|
|
||||||
;
|
|
||||||
pass-fzf = self.writeShellScriptBin "pass-fzf" (builtins.readFile ./pass-fzf.sh);
|
|
||||||
};
|
|
||||||
accounting-pkgs = {
|
|
||||||
inherit (self.haskellPackages) hledger hledger-ui hledger-web;
|
|
||||||
inherit (self) ledger aqbanking;
|
|
||||||
};
|
|
||||||
system-pkgs =
|
|
||||||
self.core-system-pkgs
|
|
||||||
// self.extra-system-pkgs
|
|
||||||
// {
|
|
||||||
home-manager =
|
|
||||||
self.callPackage "${self.sources."${self.home-manager-channel}"}/home-manager" {};
|
|
||||||
};
|
|
||||||
foreign-home-pkgs = self.extra-system-pkgs;
|
|
||||||
}
|
|
Loading…
Reference in a new issue