nixos/usbmuxd: Ability to change package

Changed files
+23 -1
nixos
doc
manual
from_md
release-notes
release-notes
modules
services
hardware
+10
nixos/doc/manual/from_md/release-notes/rl-2305.section.xml
···
</listitem>
<listitem>
<para>
<literal>services.mastodon</literal> gained a tootctl wrapped
named <literal>mastodon-tootctl</literal> similar to
<literal>nextcloud-occ</literal> which can be executed from
···
</listitem>
<listitem>
<para>
+
The module <literal>usbmuxd</literal> now has the ability to
+
change the package used by the daemon. In case you’re
+
experiencing issues with <literal>usbmuxd</literal> you can
+
try an alternative program like <literal>usbmuxd2</literal>.
+
Available as
+
<link linkend="opt-services.usbmuxd.package">services.usbmuxd.package</link>
+
</para>
+
</listitem>
+
<listitem>
+
<para>
<literal>services.mastodon</literal> gained a tootctl wrapped
named <literal>mastodon-tootctl</literal> similar to
<literal>nextcloud-occ</literal> which can be executed from
+2
nixos/doc/manual/release-notes/rl-2305.section.md
···
- The module for the application firewall `opensnitch` got the ability to configure rules. Available as [services.opensnitch.rules](#opt-services.opensnitch.rules)
- `services.mastodon` gained a tootctl wrapped named `mastodon-tootctl` similar to `nextcloud-occ` which can be executed from any user and switches to the configured mastodon user with sudo and sources the environment variables.
- The `dnsmasq` service now takes configuration via the
···
- The module for the application firewall `opensnitch` got the ability to configure rules. Available as [services.opensnitch.rules](#opt-services.opensnitch.rules)
+
- The module `usbmuxd` now has the ability to change the package used by the daemon. In case you're experiencing issues with `usbmuxd` you can try an alternative program like `usbmuxd2`. Available as [services.usbmuxd.package](#opt-services.usbmuxd.package)
+
- `services.mastodon` gained a tootctl wrapped named `mastodon-tootctl` similar to `nextcloud-occ` which can be executed from any user and switches to the configured mastodon user with sudo and sources the environment variables.
- The `dnsmasq` service now takes configuration via the
+11 -1
nixos/modules/services/hardware/usbmuxd.nix
···
{
options.services.usbmuxd = {
enable = mkOption {
type = types.bool;
default = false;
···
The group usbmuxd should use to run after startup.
'';
};
};
config = mkIf cfg.enable {
···
# Trigger the udev rule manually. This doesn't require replugging the
# device when first enabling the option to get it to work
ExecStartPre = "${pkgs.udev}/bin/udevadm trigger -s usb -a idVendor=${apple}";
-
ExecStart = "${pkgs.usbmuxd}/bin/usbmuxd -U ${cfg.user} -f";
};
};
···
{
options.services.usbmuxd = {
+
enable = mkOption {
type = types.bool;
default = false;
···
The group usbmuxd should use to run after startup.
'';
};
+
+
package = mkOption {
+
type = types.package;
+
default = pkgs.usbmuxd;
+
defaultText = literalExpression "pkgs.usbmuxd";
+
description = lib.mdDoc "Which package to use for the usbmuxd daemon.";
+
relatedPackages = [ "usbmuxd" "usbmuxd2" ];
+
};
+
};
config = mkIf cfg.enable {
···
# Trigger the udev rule manually. This doesn't require replugging the
# device when first enabling the option to get it to work
ExecStartPre = "${pkgs.udev}/bin/udevadm trigger -s usb -a idVendor=${apple}";
+
ExecStart = "${cfg.package}/bin/usbmuxd -U ${cfg.user} -v";
};
};