diff options
m--------- | nixpkgs | 0 | ||||
-rw-r--r-- | sif.nix | 98 | ||||
-rw-r--r-- | sif/boot.nix | 2 | ||||
m--------- | utils | 0 |
4 files changed, 89 insertions, 11 deletions
diff --git a/nixpkgs b/nixpkgs | |||
Subproject 99a4a7363ccc565629230ebc8cf8c949da2ffb5 | Subproject 7948e6785b4aa6a1289645575816e423d85f6ae | ||
@@ -2,7 +2,8 @@ | |||
2 | 2 | ||
3 | { | 3 | { |
4 | imports = | 4 | imports = |
5 | [ ./sif/hw.nix | 5 | [ ./nixpkgs.nix |
6 | ./sif/hw.nix | ||
6 | ./sif/boot.nix | 7 | ./sif/boot.nix |
7 | ./users.nix | 8 | ./users.nix |
8 | ./custom/zsh.nix | 9 | ./custom/zsh.nix |
@@ -49,11 +50,78 @@ | |||
49 | environment.systemPackages = with pkgs; [ | 50 | environment.systemPackages = with pkgs; [ |
50 | git rebuild-system | 51 | git rebuild-system |
51 | nvtop | 52 | nvtop |
53 | brightnessctl | ||
52 | ]; | 54 | ]; |
53 | 55 | ||
54 | nixpkgs.config.allowUnfree = true; | 56 | nixpkgs.config = { |
57 | allowUnfree = true; | ||
58 | packageOverrides = pkgs: rec { | ||
59 | libfprint = pkgs.stdenv.mkDerivation rec { | ||
60 | pname = "libfprint"; | ||
61 | version = "1.90.1"; | ||
62 | |||
63 | src = pkgs.fetchurl { | ||
64 | url = "https://gitlab.freedesktop.org/libfprint/libfprint/uploads/662cd834e76c02c4d74ad01c50412759/libfprint-1.90.1.tar.xz"; | ||
65 | sha256 = "1pv6sd852i5i0sn1ki109jhk9indl21cb4aw7v6xhcnvjmgds0xx"; | ||
66 | }; | ||
67 | |||
68 | buildInputs = with pkgs; [ libusb pixman glib nss nspr gdk_pixbuf openssl gusb gobject-introspection gtk-doc cairo ]; | ||
69 | nativeBuildInputs = with pkgs; [ pkgconfig meson ninja ]; | ||
70 | |||
71 | mesonFlags = [ "-Dudev_rules_dir=$(out)/lib/udev/rules.d" "-Ddoc=false" ]; | ||
72 | }; | ||
73 | fprintd = pkgs.stdenv.mkDerivation rec { | ||
74 | pname = "fprintd"; | ||
75 | version = "1.90.1"; | ||
76 | |||
77 | src = pkgs.fetchurl { | ||
78 | url = "https://gitlab.freedesktop.org/libfprint/fprintd/uploads/a47c31c844e23e070665a8a85dae0144/fprintd-1.90.1.tar.xz"; | ||
79 | sha256 = "03d3r0hz9m3i71wxs5h048kam6k4bdlcg6xvy50kcah5zcfhp55l"; | ||
80 | }; | ||
81 | |||
82 | buildInputs = (with pkgs; [ glib polkit dbus dbus-glib systemd pam perl libxslt libxml2 python3]) ++ (with pkgs.python3Packages; [pycairo dbus-python python-dbusmock pygobject3 ]) ++ [ libfprint pam_wrapper ]; | ||
83 | nativeBuildInputs = with pkgs; [ pkgconfig meson ninja ]; | ||
84 | |||
85 | installPhase = '' | ||
86 | install -vm 0755 -d $out/etc/dbus-1/interfaces $out/libexec $out/share/polkit-1/actions $out/share/man/man1 $out/share/man/man8 $out/bin $out/lib/security $out/etc/dbus-1/system.d $out/etc/dbus-1/system-services $out/lib/systemd/system $out/etc $out/share/locale | ||
87 | |||
88 | install -vt $out/etc/dbus-1/interfaces src/net.reactivated.Fprint.{Manager,Device}.xml | ||
89 | install -vt $out/libexec src/fprintd | ||
90 | install -vt $out/share/polkit-1/actions data/net.reactivated.fprint.device.policy | ||
91 | install -vt $out/share/man/man1 data/fprintd.1 | ||
92 | install -vt $out/share/man/man8 data/pam_fprintd.8 | ||
93 | install -vt $out/bin utils/fprintd-{delete,enroll,list,verify} | ||
94 | install -vt $out/lib/security pam/pam_fprintd.so | ||
95 | |||
96 | install -vt $out/etc/dbus-1/system.d /build/fprintd-${version}/data/net.reactivated.Fprint.conf | ||
97 | install -vt $out/etc/dbus-1/system-services /build/fprintd-${version}/build/data/net.reactivated.Fprint.service | ||
98 | install -vt $out/lib/systemd/system /build/fprintd-${version}/build/data/fprintd.service | ||
99 | install -vt $out/etc /build/fprintd-${version}/data/fprintd.conf | ||
100 | |||
101 | for lang in /build/fprintd-${version}/build/po/*.gmo; do | ||
102 | install -vD $lang $out/share/locale/$(basename $lang .gmo)/LC_MESSAGES/fprintd.mo | ||
103 | done | ||
104 | ''; | ||
105 | }; | ||
106 | pam_wrapper = pkgs.stdenv.mkDerivation rec { | ||
107 | pname = "pam_wrapper"; | ||
108 | version = "1.0.7"; | ||
109 | |||
110 | src = pkgs.fetchurl { | ||
111 | url = "mirror://samba/cwrap/${pname}-${version}.tar.gz"; | ||
112 | sha256 = "06djr20kk5sqgydkmfwllbm5ndv4jaqmkj1kab7ppc6fnqp30dq5"; | ||
113 | }; | ||
114 | |||
115 | nativeBuildInputs = with pkgs; [ pkgconfig ]; | ||
116 | buildInputs = with pkgs; [ cmake pam python3 ]; | ||
117 | }; | ||
118 | }; | ||
119 | }; | ||
55 | 120 | ||
56 | services = { | 121 | services = { |
122 | fwupd.enable = true; | ||
123 | fprintd.enable = true; | ||
124 | |||
57 | blueman.enable = true; | 125 | blueman.enable = true; |
58 | 126 | ||
59 | colord.enable = true; | 127 | colord.enable = true; |
@@ -65,10 +133,11 @@ | |||
65 | drivers = with pkgs; [ samsung-unified-linux-driver hplip ]; | 133 | drivers = with pkgs; [ samsung-unified-linux-driver hplip ]; |
66 | }; | 134 | }; |
67 | 135 | ||
68 | logind.extraConfig = '' | 136 | logind = { |
69 | HandleLidSwitch=hibernate | 137 | lidSwitch = "suspend"; |
70 | LidSwitchIgnoreInhibited=no | 138 | lidSwitchDocked = "lock"; |
71 | ''; | 139 | lidSwitchExternalPower = "lock"; |
140 | }; | ||
72 | 141 | ||
73 | openssh = { | 142 | openssh = { |
74 | enable = true; | 143 | enable = true; |
@@ -125,12 +194,19 @@ | |||
125 | 194 | ||
126 | dpi = 282; | 195 | dpi = 282; |
127 | 196 | ||
128 | videoDrivers = [ "nvidiaBeta" "intel" ]; | 197 | videoDrivers = [ "intel" "nvidiaBeta" ]; |
129 | useGlamor = true; | ||
130 | 198 | ||
131 | screenSection = '' | 199 | screenSection = '' |
200 | Device "Device-nvidia[0]" | ||
132 | Option "metamodes" "nvidia-auto-select +0+0 { ForceCompositionPipeline = On }" | 201 | Option "metamodes" "nvidia-auto-select +0+0 { ForceCompositionPipeline = On }" |
133 | ''; | 202 | ''; |
203 | |||
204 | deviceSection = '' | ||
205 | Option "AccelMethod" "SNA" | ||
206 | Option "TearFree" "True" | ||
207 | ''; | ||
208 | |||
209 | exportConfiguration = true; | ||
134 | }; | 210 | }; |
135 | 211 | ||
136 | yggdrasilTinc = { | 212 | yggdrasilTinc = { |
@@ -327,8 +403,6 @@ | |||
327 | speed = 255; | 403 | speed = 255; |
328 | }; | 404 | }; |
329 | 405 | ||
330 | brightnessctl.enable = true; | ||
331 | |||
332 | nvidia = { | 406 | nvidia = { |
333 | modesetting.enable = true; | 407 | modesetting.enable = true; |
334 | prime = { | 408 | prime = { |
@@ -444,6 +518,10 @@ | |||
444 | [ dbus gnome3.dconf | 518 | [ dbus gnome3.dconf |
445 | ]; | 519 | ]; |
446 | 520 | ||
521 | programs = { | ||
522 | light.enable = true; | ||
523 | }; | ||
524 | |||
447 | system.stateVersion = "20.03"; # Did you read the comment? | 525 | system.stateVersion = "20.03"; # Did you read the comment? |
448 | } | 526 | } |
449 | 527 | ||
diff --git a/sif/boot.nix b/sif/boot.nix index d903b16f..fbfcf5cd 100644 --- a/sif/boot.nix +++ b/sif/boot.nix | |||
@@ -23,7 +23,7 @@ | |||
23 | plymouth.enable = true; | 23 | plymouth.enable = true; |
24 | 24 | ||
25 | kernelPackages = pkgs.linuxPackages_latest; | 25 | kernelPackages = pkgs.linuxPackages_latest; |
26 | kernelParams = [ "i915.fastboot=1" "intel_pstate=no_hwp" "quiet" ]; | 26 | kernelParams = [ "i915.fastboot=1" "intel_pstate=no_hwp" "acpi_backlight=vendor" "thinkpad-acpi.brightness_enable=1" "quiet" ]; |
27 | 27 | ||
28 | tmpOnTmpfs = true; | 28 | tmpOnTmpfs = true; |
29 | }; | 29 | }; |
diff --git a/utils b/utils | |||
Subproject f55aa62c7dd25d44b37985ef5f109eb8212f5ae | Subproject b02413acfbbb1e541fcb9218d6930dbf283c721 | ||