diff --git a/nixos/README.md b/nixos/README.md new file mode 100644 index 0000000..9152e67 --- /dev/null +++ b/nixos/README.md @@ -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 +``` diff --git a/nixos/configuration.nix b/nixos/configuration.nix index 0ec2343..db698d6 100644 --- a/nixos/configuration.nix +++ b/nixos/configuration.nix @@ -83,6 +83,7 @@ tig mosh bat + lf ripgrep fzf python3 diff --git a/nixos/surface-extra-hardware-configuration.nix b/nixos/surface-extra-hardware-configuration.nix index e2d33f1..cb163f1 100644 --- a/nixos/surface-extra-hardware-configuration.nix +++ b/nixos/surface-extra-hardware-configuration.nix @@ -37,62 +37,65 @@ # add pulseaudio support to manage audio 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 - systemd.services = { - surface-sleep = { - enable = lib.versionOlder config.boot.kernelPackages.kernel.version "5.4"; - before = [ "suspend.target" ]; - wantedBy = [ "suspend.target" ]; - serviceConfig.Type = "oneshot"; - path = with pkgs; [ procps kmod bluez ]; - script = '' - # Disable bluetooth if no device is connected - if ps cax | grep bluetoothd && ! bluetoothctl info; then - bluetoothctl power off - fi + # systemd.services = { + # surface-sleep = { + # enable = lib.versionOlder config.boot.kernelPackages.kernel.version "5.4"; + # before = [ "suspend.target" ]; + # wantedBy = [ "suspend.target" ]; + # serviceConfig.Type = "oneshot"; + # path = with pkgs; [ procps kmod bluez ]; + # script = '' + # # Disable bluetooth if no device is connected + # if ps cax | grep bluetoothd && ! bluetoothctl info; then + # bluetoothctl power off + # fi - ## Disable bluetooth regardless if devices are connected (see notes below) - # if ps cax | grep bluetoothd; then - # bluetoothctl power off - # fi + # ## Disable bluetooth regardless if devices are connected (see notes below) + # # if ps cax | grep bluetoothd; then + # # bluetoothctl power off + # # fi - ## > Remove IPTS from ME side - modprobe -r ipts_surface - modprobe -r intel_ipts - # modprobe -r mei_hdcp - modprobe -r mei_me - modprobe -r mei - ## > Remove IPTS from i915 side - for i in $(find /sys/kernel/debug/dri -name i915_ipts_cleanup); do - echo 1 > $i - done - ''; - }; - surface-wake = { - enable = lib.versionOlder config.boot.kernelPackages.kernel.version "5.4"; - after = [ "post-resume.target" ]; - wantedBy = [ "post-resume.target" ]; - serviceConfig.Type = "oneshot"; - path = with pkgs; [ procps kmod bluez ]; - script = '' - ## > Load IPTS from i915 side - for i in $(find /sys/kernel/debug/dri -name i915_ipts_init); do - echo 1 > $i - done - ## > Load IPTS from ME side - modprobe mei - modprobe mei_me - # modprobe mei_hdcp - modprobe intel_ipts - modprobe ipts_surface + # ## > Remove IPTS from ME side + # modprobe -r ipts_surface + # modprobe -r intel_ipts + # # modprobe -r mei_hdcp + # modprobe -r mei_me + # modprobe -r mei + # ## > Remove IPTS from i915 side + # for i in $(find /sys/kernel/debug/dri -name i915_ipts_cleanup); do + # echo 1 > $i + # done + # ''; + # }; + # surface-wake = { + # enable = lib.versionOlder config.boot.kernelPackages.kernel.version "5.4"; + # after = [ "post-resume.target" ]; + # wantedBy = [ "post-resume.target" ]; + # serviceConfig.Type = "oneshot"; + # path = with pkgs; [ procps kmod bluez ]; + # script = '' + # ## > Load IPTS from i915 side + # for i in $(find /sys/kernel/debug/dri -name i915_ipts_init); do + # echo 1 > $i + # done + # ## > Load IPTS from ME side + # modprobe mei + # modprobe mei_me + # # modprobe mei_hdcp + # modprobe intel_ipts + # modprobe ipts_surface - # Restart bluetooth - if ps cax | grep bluetoothd; then - bluetoothctl power on - fi - ''; - }; - }; + # # Restart bluetooth + # if ps cax | grep bluetoothd; then + # bluetoothctl power on + # fi + # ''; + # }; + # }; ## NOTES: # Susspend issue: