Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
frenck/spook includes a second manifest for an integration. The current
copyCustomComponents script assumed that only one component directory
will be found, which in this case resulted in a malformed symlink
destination:
lrwxrwxrwx 1 hass hass 224 Jun 23 17:23 spook -> '/nix/store/r41ics22zs578avzqf7x86plcgn2q71h-python3.12-frenck-spook-v3.0.1/custom_components/spook/integrations/spook_inverse'$'\n''/nix/store/r41ics22zs578avzqf7x86plcgn2q71h-python3.12-frenck-spook-v3.0.1/custom_components/spook'
|
|
these changes were generated with nixq 0.0.2, by running
nixq ">> lib.mdDoc[remove] Argument[keep]" --batchmode nixos/**.nix
nixq ">> mdDoc[remove] Argument[keep]" --batchmode nixos/**.nix
nixq ">> Inherit >> mdDoc[remove]" --batchmode nixos/**.nix
two mentions of the mdDoc function remain in nixos/, both of which
are inside of comments.
Since lib.mdDoc is already defined as just id, this commit is a no-op as
far as Nix (and the built manual) is concerned.
|
|
These are loaded unconditionally during bootstrap, and home-assistant
will now fail to start, if these aren't provided.
|
|
https://www.home-assistant.io/blog/2024/02/07/release-20242/
https://github.com/home-assistant/core/releases/tag/2024.2.1
|
|
|
|
Before components was not an array and the first loop did never loop
through all entries but through the entire output of find without
splitting by new line.
Tested by copying the preStart script out of the nix store, doing the
change and observing that now the custom-components directory is indeed
being cleaned up after removing a custom component.
|
|
home-assistant: 2023.11.3 -> 2023.12.0
|
|
|
|
|
|
eq3btsmart was removed in 2023.12.0.
|
|
Only append the .js extension to the card pname, not to the specified
entrypoint.
|
|
nixos/home-assistant: fix custom lovelace module loading
|
|
based on https://community.home-assistant.io/t/ui-lovelace-yaml-and-custom-resources/240178/4
Tested on a home-assistant server and before the card was not loaded at all.
After this it threw an error that my config is wrong.
|
|
writable lovelace config
error message before was:
cp: not writing through dangling symlink '/var/lib/hass/ui-lovelace.yaml'
|
|
Allows passing custom component packages, that get installed into
home-assistant's state directory.
Python depedencies, that are propagated from the custom component
get passed into `extraPackages`, so they are available to
home-assistant at runtime.
This is implemented in a way, that allows coexistence with custom
components not managed through the NixOS module.
|
|
Allows the installation of custom lovelace modules, that can inject
css/js into the frontend and offer a wide variety of widgets.
|
|
https://www.home-assistant.io/blog/2023/11/01/release-202311/
|
|
nixos/home-assistant: use runCommandLocal for configuration.yaml
|
|
nixos/network-interfaces: stop wrapping ping with cap_net_raw
|
|
It's a quite trivial operation, no need to query substitutors.
|
|
|
|
From systemd 243 release note[1]:
This release enables unprivileged programs (i.e. requiring neither
setuid nor file capabilities) to send ICMP Echo (i.e. ping) requests
by turning on the "net.ipv4.ping_group_range" sysctl of the Linux
kernel for the whole UNIX group range, i.e. all processes.
So this wrapper is not needed any more.
See also [2] and [3].
This patch also removes:
- apparmor profiles in NixOS for ping itself and the wrapped one
- other references for the wrapped ping
[1]: https://github.com/systemd/systemd/blob/8e2d9d40b33bc8e8f5d3479fb075d3fab32a4184/NEWS#L6457-L6464
[2]: https://github.com/systemd/systemd/pull/13141
[3]: https://fedoraproject.org/wiki/Changes/EnableSysctlPingGroupRange
|
|
|
|
|
|
nixos/home-assistant: fix infinite recursion when derivations are used in config
|
|
|
|
|
|
https://nixos.org/manual/nix/stable/language/builtins.html#builtins-isNull
|
|
Injecting configuration specific dependencies into the
propagatedBuildInputs of the home-assistant package forces alot of
rebuilds while setting up home-assistant, which is annoying.
By passing optional dependencies into home-assistant via the systemd
units PYTHONPATH environment variable, only he concatenation of
library paths in the systemd unit requires a rebuild.
This also means users can rely heavily on the cached home-assistant
package and will rarely have to build from source, if ever.
|
|
|
|
|
|
|
|
And fix the capability logic for bluetooth devices.
|
|
conversions were done using https://github.com/pennae/nix-doc-munge
using (probably) rev f34e145 running
nix-doc-munge nixos/**/*.nix
nix-doc-munge --import nixos/**/*.nix
the tool ensures that only changes that could affect the generated
manual *but don't* are committed, other changes require manual review
and are discarded.
|
|
|
|
this renders the same in the manpage and a little more clearly in the
html manual. in the manpage there continues to be no distinction from
regular text, the html manual gets code-type markup (which was probably
the intention for most of these uses anyway).
|
|
A larger number of bluetooth components were introduced in 2022.8.0. To
make them work we need to add a hardening exception, so they can
discover and use bluetooth devices.
|
|
treewide: automatically md-convert option descriptions
|
|
|
|
the conversion procedure is simple:
- find all things that look like options, ie calls to either `mkOption`
or `lib.mkOption` that take an attrset. remember the attrset as the
option
- for all options, find a `description` attribute who's value is not a
call to `mdDoc` or `lib.mdDoc`
- textually convert the entire value of the attribute to MD with a few
simple regexes (the set from mdize-module.sh)
- if the change produced a change in the manual output, discard
- if the change kept the manual unchanged, add some text to the
description to make sure we've actually found an option. if the
manual changes this time, keep the converted description
this procedure converts 80% of nixos options to markdown. around 2000
options remain to be inspected, but most of those fail the "does not
change the manual output check": currently the MD conversion process
does not faithfully convert docbook tags like <code> and <package>, so
any option using such tags will not be converted at all.
|
|
|
|
Reload the service when configuration changes. This means that we don't
have a potentially slow startup for every small configuration change.
|
|
|
|
Overriding can now happen using module options, which is preferred
because it is more discoverable and doesn't require knowledge of
overrides in the first place.
|
|
While the documentation said to set this to null, in case an imperative
config was supposed to be used, this was not possible with the typing in
place.
|
|
The attributes can be missing on the package, since they're optional, so
catch that by adding empty defaults.
|
|
Co-Authored-By: Martin Weinelt <hexa@darmstadt.ccc.de>
|
|
The rpi_power integration is part of the onboarding flow on Raspberry Pi
SBCs.
|
|
Database provisioning was shown to be racy since adding a recorder test
using PostgreSQL. There is no harm in waiting for these services,
because if they're not available they will be ignored.
|