small nix update

This commit is contained in:
arnaucube
2024-07-08 16:16:25 +02:00
parent f2eea2c4e4
commit 685ccc5eff
3 changed files with 68 additions and 52 deletions

12
nixos/README.md Normal file
View File

@@ -0,0 +1,12 @@
from time to time run the following commands to remove stuff from old generations
```
# list old generations
sudo nix-env --list-generations --profile /nix/var/nix/profiles/system
# remove old generations
sudo nix-env --profile /nix/var/nix/profiles/system --delete-generations 9 10 11 12 13 X...
# to remove old programs
nix-collect-garbage --delete-old
```

View File

@@ -83,6 +83,7 @@
tig tig
mosh mosh
bat bat
lf
ripgrep ripgrep
fzf fzf
python3 python3

View File

@@ -37,62 +37,65 @@
# add pulseaudio support to manage audio # add pulseaudio support to manage audio
hardware.pulseaudio.enable = true; hardware.pulseaudio.enable = true;
# prevent suspend on folding
services.logind.lidSwitch = "ignore";
# next sleep & wake is code from: https://github.com/hpfr/system/blob/2e5b3b967b0436203d7add6adbd6b6f55e87cf3c/hosts/linux-surface.nix # next sleep & wake is code from: https://github.com/hpfr/system/blob/2e5b3b967b0436203d7add6adbd6b6f55e87cf3c/hosts/linux-surface.nix
systemd.services = { # systemd.services = {
surface-sleep = { # surface-sleep = {
enable = lib.versionOlder config.boot.kernelPackages.kernel.version "5.4"; # enable = lib.versionOlder config.boot.kernelPackages.kernel.version "5.4";
before = [ "suspend.target" ]; # before = [ "suspend.target" ];
wantedBy = [ "suspend.target" ]; # wantedBy = [ "suspend.target" ];
serviceConfig.Type = "oneshot"; # serviceConfig.Type = "oneshot";
path = with pkgs; [ procps kmod bluez ]; # path = with pkgs; [ procps kmod bluez ];
script = '' # script = ''
# Disable bluetooth if no device is connected # # Disable bluetooth if no device is connected
if ps cax | grep bluetoothd && ! bluetoothctl info; then # if ps cax | grep bluetoothd && ! bluetoothctl info; then
bluetoothctl power off # bluetoothctl power off
fi # fi
## Disable bluetooth regardless if devices are connected (see notes below) # ## Disable bluetooth regardless if devices are connected (see notes below)
# if ps cax | grep bluetoothd; then # # if ps cax | grep bluetoothd; then
# bluetoothctl power off # # bluetoothctl power off
# fi # # fi
## > Remove IPTS from ME side # ## > Remove IPTS from ME side
modprobe -r ipts_surface # modprobe -r ipts_surface
modprobe -r intel_ipts # modprobe -r intel_ipts
# modprobe -r mei_hdcp # # modprobe -r mei_hdcp
modprobe -r mei_me # modprobe -r mei_me
modprobe -r mei # modprobe -r mei
## > Remove IPTS from i915 side # ## > Remove IPTS from i915 side
for i in $(find /sys/kernel/debug/dri -name i915_ipts_cleanup); do # for i in $(find /sys/kernel/debug/dri -name i915_ipts_cleanup); do
echo 1 > $i # echo 1 > $i
done # done
''; # '';
}; # };
surface-wake = { # surface-wake = {
enable = lib.versionOlder config.boot.kernelPackages.kernel.version "5.4"; # enable = lib.versionOlder config.boot.kernelPackages.kernel.version "5.4";
after = [ "post-resume.target" ]; # after = [ "post-resume.target" ];
wantedBy = [ "post-resume.target" ]; # wantedBy = [ "post-resume.target" ];
serviceConfig.Type = "oneshot"; # serviceConfig.Type = "oneshot";
path = with pkgs; [ procps kmod bluez ]; # path = with pkgs; [ procps kmod bluez ];
script = '' # script = ''
## > Load IPTS from i915 side # ## > Load IPTS from i915 side
for i in $(find /sys/kernel/debug/dri -name i915_ipts_init); do # for i in $(find /sys/kernel/debug/dri -name i915_ipts_init); do
echo 1 > $i # echo 1 > $i
done # done
## > Load IPTS from ME side # ## > Load IPTS from ME side
modprobe mei # modprobe mei
modprobe mei_me # modprobe mei_me
# modprobe mei_hdcp # # modprobe mei_hdcp
modprobe intel_ipts # modprobe intel_ipts
modprobe ipts_surface # modprobe ipts_surface
# Restart bluetooth # # Restart bluetooth
if ps cax | grep bluetoothd; then # if ps cax | grep bluetoothd; then
bluetoothctl power on # bluetoothctl power on
fi # fi
''; # '';
}; # };
}; # };
## NOTES: ## NOTES:
# Susspend issue: # Susspend issue: