···2020- `hardware.display` is a new module implementing workarounds for misbehaving monitors
2121 through setting up custom EDID files and forcing kernel/framebuffer modes.
22222323-- NixOS now has support for *automatic boot assessment* (see [here](https://systemd.io/AUTOMATIC_BOOT_ASSESSMENT/)) for detailed description of the feature) for `systemd-boot` users. Available as [boot.loader.systemd-boot.bootCounting](#opt-boot.loader.systemd-boot.bootCounting.enable).
2424-2523- A new display-manager `services.displayManager.ly` was added.
2624 It is a tui based replacement of sddm and lightdm for window manager users.
2725 Users can use it by `services.displayManager.ly.enable` and config it by
+4-1
nixos/modules/services/misc/open-webui.nix
···5454 WEBUI_AUTH = "False";
5555 }
5656 '';
5757- description = "Extra environment variables for Open-WebUI";
5757+ description = ''
5858+ Extra environment variables for Open-WebUI.
5959+ For more details see https://docs.openwebui.com/getting-started/env-configuration/
6060+ '';
5861 };
59626063 openFirewall = lib.mkOption {
···11-# Automatic boot assessment with systemd-boot {#sec-automatic-boot-assessment}
22-33-## Overview {#sec-automatic-boot-assessment-overview}
44-55-Automatic boot assessment (or boot-counting) is a feature of `systemd-boot` that allows for automatically detecting invalid boot entries.
66-When the feature is active, each boot entry has an associated counter with a user defined number of trials. Whenever `systemd-boot` boots an entry, its counter is decreased by one, ultimately being marked as *bad* if the counter ever reaches zero. However, if an entry is successfully booted, systemd will permanently mark it as *good* and remove the counter altogether. Whenever an entry is marked as *bad*, it is sorted last in the `systemd-boot` menu.
77-A complete explanation of how that feature works can be found [here](https://systemd.io/AUTOMATIC_BOOT_ASSESSMENT/).
88-99-## Enabling the feature {#sec-automatic-boot-assessment-enable}
1010-1111-The feature can be enabled by toogling the [boot.loader.systemd-boot.bootCounting](#opt-boot.loader.systemd-boot.bootCounting.enable) option.
1212-1313-## The boot-complete.target unit {#sec-automatic-boot-assessment-boot-complete-target}
1414-1515-A *successful boot* for an entry is defined in terms of the `boot-complete.target` synchronisation point. It is up to the user to schedule all necessary units for the machine to be considered successfully booted before that synchronisation point.
1616-For example, if you are running `docker` on a machine and you want to be sure that a *good* entry is an entry where docker is started successfully.
1717-A configuration for that NixOS machine could look like that:
1818-1919-```
2020-boot.loader.systemd-boot.bootCounting.enable = true;
2121-services.docker.enable = true;
2222-2323-systemd.services.docker = {
2424- before = [ "boot-complete.target" ];
2525- wantedBy = [ "boot-complete.target" ];
2626- unitConfig.FailureAction = "reboot";
2727-};
2828-```
2929-3030-The systemd service type must be of type `notify` or `oneshot` for systemd to dectect the startup error properly.
3131-3232-## Interaction with specialisations {#sec-automatic-boot-assessment-specialisations}
3333-3434-When the boot-counting feature is enabled, `systemd-boot` will still try the boot entries in the same order as they are displayed in the boot menu. This means that the specialisations of a given generation will be tried directly after that generation, but that behavior is customizable with the [boot.loader.systemd-boot.sortKey](#opt-boot.loader.systemd-boot.sortKey) option.
3535-3636-## Limitations {#sec-automatic-boot-assessment-limitations}
3737-3838-This feature has to be used wisely to not risk any data integrity issues. Rollbacking into past generations can sometimes be dangerous, for example if some of the services may have undefined behaviors in the presence of unrecognized data migrations from future versions of themselves.
···2626}:
27272828let
2929- version = "1.17.2";
2929+ version = "1.18.1";
30303131 # build stimuli file for PGO build and the script to generate it
3232 # independently of the foot's build, so we can cache the result
···9898 owner = "dnkl";
9999 repo = "foot";
100100 rev = version;
101101- hash = "sha256-p+qaWHBrUn6YpNyAmQf6XoQyO3degHP5oMN53/9gIr4=";
101101+ hash = "sha256:15s7fbkibvq53flf5yy9ad37y53pl83rcnjwlnfh96a4s5mj6v5d";
102102 };
103103104104 separateDebugInfo = true;
···156156 "-Dcustom-terminfo-install-location=${terminfoDir}"
157157 # Install systemd user units for foot-server
158158 "-Dsystemd-units-dir=${placeholder "out"}/lib/systemd/user"
159159+ # Especially -Wunused-command-line-argument is a problem with clang
160160+ "-Dwerror=false"
159161 ];
160162161163 # build and run binary generating PGO profiles,
···8899buildGoModule rec {
1010 pname = "honk";
1111- version = "1.3.1";
1111+ version = "1.4.1";
12121313 src = fetchurl {
1414 url = "https://humungus.tedunangst.com/r/honk/d/honk-${version}.tgz";
1515- hash = "sha256-F4Hz36nvcZv8MTh7a9Zr73kEBTS0c16Xty3T6/EzJeI=";
1515+ hash = "sha256-o9K/ht31nEbx2JmLG3OSIgKZGygpDhZYqCxs6tuSnlc=";
1616 };
1717 vendorHash = null;
1818···2727 subPackages = [ "." ];
28282929 # This susbtitution is not mandatory. It is only existing to have something
3030- # working out of the box. This value can be overriden by the user, by
3030+ # working out of the box. This value can be overridden by the user, by
3131 # providing the `-viewdir` parameter in the command line.
3232 postPatch = ''
3333- substituteInPlace main.go --replace \
3333+ substituteInPlace main.go --replace-fail \
3434 "var viewDir = \".\"" \
3535 "var viewDir = \"$out/share/honk\""
3636 '';
···99}:
10101111rustPlatform.buildRustPackage rec {
1212- pname = "rustic-rs";
1212+ pname = "rustic";
1313 version = "0.7.0";
14141515 src = fetchFromGitHub {
···1919 hash = "sha256-jUAmboJTzX4oJZy9rFiPRbm94bVpZGa0SaqotoCU/Ss=";
2020 };
21212222- cargoHash = "sha256-iZuWlYDGGziwb49BfKdt9Ahs6oQ0Ij2iiT0tvL7ZIVk=";
2222+ cargoHash = "sha256-8YGvxnwD9Vshah2jZ+XxOW0qB4nvWsOyLY1W8k+xQzU=";
23232424 # At the time of writing, upstream defaults to "self-update" and "webdav".
2525 # "self-update" is a self-updater, which we don't want in nixpkgs.