nixpkgs/nixos/modules/services
Alyssa Ross 8aa8e0ce7f
nixos/udev: compress all firmware if supported
This should be a significant disk space saving for most NixOS
installations.  This method is a bit more complicated than doing it in
the postInstall for the firmware derivations, but this way it's
automatic, so each firmware package doesn't have to separately
implement its compression.

Currently, only xz compression is supported, but it's likely that
future versions of Linux will additionally support zstd, so I've
written the code in such a way that it would be very easy to implement
zstd compression for those kernels when they arrive, falling back to
xz for older (current) kernels.

I chose the highest possible level of compression (xz -9) because even
at this level, decompression time is negligible.  Here's how long it took
to decompress every firmware file my laptop uses:

	i915/kbl_dmc_ver1_04.bin                  	2ms
	regulatory.db                             	4ms
	regulatory.db.p7s                         	3ms
	iwlwifi-7265D-29.ucode                    	62ms
	9d71-GOOGLE-EVEMAX-0-tplg.bin             	22ms
	intel/dsp_fw_kbl.bin                      	65ms
	dsp_lib_dsm_core_spt_release.bin          	6ms
	intel/ibt-hw-37.8.10-fw-22.50.19.14.f.bseq	7ms

And since booting NixOS is a parallel process, it's unlikely (but
difficult to measure) that the time to user interaction was held up at
all by most of these.

Fixes (partially?) #148197
2022-05-13 14:36:34 +00:00
..
admin nixos/pgadmin: init 2022-02-26 14:30:14 +01:00
amqp nixos/doc: clean up defaults and examples 2021-10-04 12:47:20 +02:00
audio nixos/snapserver: don't open ports by default 2022-04-20 23:25:28 +02:00
backup nixos/borgmatic: use pkgs.formats.yaml 2022-05-08 01:08:28 -07:00
blockchain/ethereum nixos/doc: clean up defaults and examples 2021-10-04 12:47:20 +02:00
cluster Merge pull request #154004 from illustris/hadoop 2022-03-16 14:05:56 +02:00
computing nixos/slurm: fix startup of slurmd 2022-01-31 23:08:55 +01:00
continuous-integration treewide: chown user:group instead of user.group to fix warnings from coreutils 9.1 2022-05-05 22:05:18 +00:00
databases couchdb3: 3.2.1 -> 3.2.2 2022-04-26 09:02:36 +00:00
desktops pipewire: 0.3.49 -> 0.3.50 2022-04-29 04:29:12 +03:00
development Merge pull request #137335 from dsg22/feature-jupyter-create-system-user 2022-04-03 18:22:04 +01:00
display-managers nixos/doc: clean up defaults and examples 2021-10-04 12:47:20 +02:00
editors nixos/haste-server: add 2022-03-07 23:38:23 +01:00
finance nixos/odoo: apply suggestions from review 2021-11-03 12:40:59 +01:00
games factorio: Add loadLatestSave 2022-05-06 17:50:35 +01:00
hardware nixos/udev: compress all firmware if supported 2022-05-13 14:36:34 +00:00
home-automation nixos/home-assistant: fix openFirewall 2022-05-05 15:04:46 -07:00
logging treewide: pkgs.systemd -> config.systemd.package 2022-05-05 20:00:31 +02:00
mail treewide: pkgs.systemd -> config.systemd.package 2022-05-05 20:00:31 +02:00
matrix nixos/matrix-synapse: Add a defaultText 2022-05-05 12:22:37 +02:00
misc dendrite: 0.8.1 -> 0.8.4 2022-05-11 18:40:05 +08:00
monitoring Merge pull request #169216 from Shawn8901/fix_prometheus_config_generation 2022-05-08 15:09:09 +02:00
network-filesystems nixos/ipfs: fix the services.ipfs.autoMigrate option 2022-04-16 07:38:13 -04:00
networking Merge pull request #171650 from helsinki-systems/feat/config-systemd-package 2022-05-09 10:23:04 +02:00
printing nixos/doc: clean up defaults and examples 2021-10-04 12:47:20 +02:00
scheduling nixos/doc: clean up defaults and examples 2021-10-04 12:47:20 +02:00
search Merge pull request #153596 from illustris/elasticsearch 2022-01-30 01:23:58 +01:00
security Merge pull request #171650 from helsinki-systems/feat/config-systemd-package 2022-05-09 10:23:04 +02:00
system nixos/nscd: Fix lib.literalExample deprecation 2022-04-26 14:06:52 +02:00
torrent Merge pull request #148785 from pennae/more-option-doc-staticizing 2021-12-17 11:14:08 -05:00
ttys nixos/kmscon: Add fonts option 2022-04-18 15:56:34 +02:00
video nixos/unifi-video: add deprecation warning for openFirewall 2022-03-28 19:55:50 -07:00
wayland treewide: pkgs.systemd -> config.systemd.package 2022-05-05 20:00:31 +02:00
web-apps nixos/snipe-it: init 2022-05-10 16:57:21 +02:00
web-servers treewide/meta: Remove chiiruno and replace with Madouura (#169096) 2022-04-18 02:13:36 +03:00
x11 Merge pull request #171650 from helsinki-systems/feat/config-systemd-package 2022-05-09 10:23:04 +02:00