summary refs log tree commit diff
path: root/nixos/modules/programs
Commit message (Collapse)AuthorAge
* Merge pull request #258347 from Benjamin-L/gnupg-agent-extraconfigMichele Guerini Rocco2023-10-09
|\ | | | | nixos/gnupg: add agent.settings option
| * nixos/gnupg: add agent.settings optionBenjamin Lee2023-10-05
| |
* | Merge pull request #256407 from Ma27/motd-orderingMaximilian Bosch2023-10-04
|\ \ | | | | | | nixos/rust-motd: allow ordering sections
| * | nixos/rust-motd: refactor assertion and TOML generationMaximilian Bosch2023-09-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * `sort (<)` also works for strings (TIL!), so no need for comparing length and whether all keys from `cfg.settings` exist in `cfg.order` (slightly less overhead). * Don't build another piece of JSON (`orderedSections`), simply use `cfg.settings`/`cfg.order` with `__structuredAttrs` to ensure a properly ordered TOML. This also has the upside of not having to do quote hackery. * Also, a freeform submodule isn't strictly needed because we don't have any special options defined, so replacing that with `attrsOf format.type`. Co-authored-by: Silvan Mosberger <github@infinisil.com>
| * | nixos/rust-motd: use a second attribute (`order`) for the of sections in TOMLMaximilian Bosch2023-09-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rather than using `priority` with `sortProperties`, a new option called `order` defines the ordering of the sections. I.e. order = [ "global" "uptime" "banner" ] means that `uptime` comes before `banner`. Please note that `global` is for global settings and not a section. I figured that it'd be too much magic to hide this in the implementation and ask the user to specify the order of _each_ section in `settings` instead. OTOH this makes the intent way clearer than priorities. Also, this remains opt-in, the option defaults to `attrNames cfg.settings`, i.e. all sections ordered alphabetically.
| * | nixos/rust-motd: .attrs.json -> "$NIX_ATTRS_JSON_FILE"Maximilian Bosch2023-09-21
| | | | | | | | | | | | | | | That way the derivation can also be built in a `nix-shell` where `.attrs.json` isn't under "$NIX_BUILD_TOP".
| * | nixos/rust-motd: allow ordering sections by `priority`Maximilian Bosch2023-09-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Closes #234802 The problem here is that with e.g. { uptime.prefix = "Up"; banner.command = "hostname | figlet -f slant"; } `banner` still appears before `uptime` in the final motd text because Nix sorts attribute names alphabetically internally. To work around this without breaking compatibility or losing the property to override individual sections in other modules - e.g. { banner.color = mkForce "blue"; } I decided to introduce an option `priority` here, similar to the priority field for `nginx`[1] and with the same semantics (i.e. higher value means lower priority). Internally a bunch of env vars are generated, i.e. `env0` to `envN` for `N` sections with each of them containing a declaration for the TOML, i.e. `env0` contains `{ uptime.prefix = "Up"; }` and `env1` contains `{ banner.command = "hostname | figlet -f slant"; }` if `uptime.priority` is set to a value below 1000. In this order, the declarations are concatenated together by `jq(1)` which doesn't sort keys alphabetically which results in a JSON representation with `uptime` before `banner`. This is finally piped to `json2toml` which converts this into TOML for rust-motd. [1] https://nixos.org/manual/nixos/unstable/options#opt-services.nginx.virtualHosts._name_.locations._name_.priority
| * | nixos/rust-motd: run once on bootupMaximilian Bosch2023-09-20
| | | | | | | | | | | | | | | That way e.g. the last login and uptime isn't completely bogus when accessing a machine for the first time after a reboot.
* | | Merge pull request #248627 from edef1c/gpg-agent-socketsedef2023-10-04
|\ \ \
| * | | nixos/gnupg: require sockets.target, not just gpg-agent.socketedef2023-08-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If other sockets are enabled, such as gpg-agent-browser.socket, those should be started before gpg-agent.service as well. Change-Id: I29d3f4b19db9e687425b594dcef863a88ec296c9
* | | | nixos/environment: move XDG_CONFIG_DIRS to sessionVariablesAlyssa Ross2023-10-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise, in non-interactive contexts (e.g. systemd units), this entry (the default) won't be in the list. Only the profile relative ones would be, since they were already using session variables. This is clearly not the correct behavior.
* | | | Merge pull request #257719 from CardboardTurkey/regreet-fix-groupRyan Lahfa2023-10-02
|\ \ \ \
| * | | | regreet: fix user group in tmpfiles rulesKiran Ostrolenk2023-09-27
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | Prior to this commit the derivation assumed a user's primary group has the same name as the user themselves. This is standard on linux but not necessary (and indeed I believe not the default on NixOS). Closes #232184
* | | | treewide: use `pkgs.config` instead of `config.nixpkgs.config`K9002023-10-01
| | | | | | | | | | | | | | | | | | | | | | | | `pkgs` may be passed in externally, in which case `config.nixpkgs.config` will not be set. Follow-up to #257458.
* | | | Merge pull request #257458 from K900/die-nixpkgs-config-dieK9002023-10-01
|\ \ \ \ | | | | | | | | | | treewide: fail when `nixpkgs.config` is set with explicit `pkgs`, remove all `nixpkgs.config` usages in in-tree modules
| * | | | nixos/firefox: remove `nixpkgs.config` usageK9002023-09-26
| |/ / /
* / / / nixos/nano: add enable, package option, do not create /etc/nanorc by defaultSandro Jäckel2023-09-29
|/ / / | | | | | | | | | | | | | | | | | | | | | and remove nano from environment.defaultPackages. In addition also cleanup the file in general. This is a follow up to #220481 Co-authored-by: pennae <82953136+pennae@users.noreply.github.com>
* | | Merge pull request #176886 from hyperfekt/nonderivation_fish-completionArtturi2023-09-23
|\ \ \ | |_|/ |/| |
| * | nixos/fish: fix completion generation for non-derivation packageshyperfekt2023-03-12
| | | | | | | | | | | | | | | | | | environment.systemPackages can include any package, which means it can be a top-level store path that is not a derivation and thus will not have a name attribute - their name is extracted from the path instead.
* | | Merge pull request #254833 from NickCao/qt4-leftoverNick Cao2023-09-19
|\ \ \ | | | | | | | | nixos/environment: drop QT_PLUGIN_PATH for qt4 and kde4 as they has b…
| * | | nixos/environment: drop KDEDIRS as a leftover from KDE4Nick Cao2023-09-13
| | | |
| * | | nixos/environment: drop QT_PLUGIN_PATH for qt4 and kde4 as they has been removedNick Cao2023-09-12
| | | |
* | | | nixos/environment: drop MOZ_PLUGIN_PATHNick Cao2023-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are currently no references to MOZ_PLUGIN_PATH treewide in gecko[1]. And the support for this environment variable was dropped in 2019[2]. See also: https://bugzilla.mozilla.org/show_bug.cgi?id=1602308 [1] https://github.com/search?q=repo%3Amozilla%2Fgecko-dev+MOZ_PLUGIN_PATH&type=code [2] https://hg.mozilla.org/mozilla-central/rev/9b4e603eb86a
* | | | nixos/yubikey-touch-detector: init (#254947)tomf2023-09-14
| | | | | | | | | | | | | | | | | | | | * nixos/yubikey-touch-detector: init * nixos/yubikey-touch-detector: enable user socket
* | | | nixos/hyprland: update portal overrideMihai Fufezan2023-09-14
| | | |
* | | | Merge pull request #254941 from foo-dogsquared/update-clash-verge-docsNick Cao2023-09-13
|\ \ \ \ | | | | | | | | | | nixos/clash-verge: fix module descriptions
| * | | | nixos/clash-verge: fix module descriptionsGabriel Arazas2023-09-13
| | | | |
* | | | | nixos/yazi: add to module-list.nixlinsui2023-09-13
| |/ / / |/| | |
* | | | Merge pull request #254296 from Gerg-L/direnvFabián Heredia Montiel2023-09-12
|\ \ \ \ | | | | | | | | | | nixos/direnv: remove persistDerivations
| * | | | nixos/direnv: remove persistDerivationsGerg-L2023-09-09
| |/ / /
* / / / nixos/bash: Drop workarounds for etermnicoo2023-09-12
|/ / /
* | | Merge pull request #253071 from linsui/yaziWeijia Wang2023-09-07
|\ \ \ | | | | | | | | nixos/yazi: init
| * | | nixos/yazi: initlinsui2023-09-03
| | | |
* | | | Merge pull request #247618 from Majiir/streamdeck-ui-3.0.1Weijia Wang2023-09-07
|\ \ \ \ | | | | | | | | | | streamdeck-ui: 2.0.6 -> 3.0.1
| * | | | streamdeck-ui: split desktop itemsMajiir Paktu2023-09-06
| |/ / /
* / / / Add `programs.ecryptfs` for mount wrappers.Niklas Hambüchen2023-09-05
|/ / / | | | | | | | | | | | | The `ecryptfs` package refers to the setuid wrapper paths, but they do not exist so far in NixOS.
* | | Merge pull request #234615 from linsui/dconfJan Tojnar2023-08-28
|\ \ \ | | | | | | | | nixos/dconf: support generating from attrs
| * | | nixos/dconf: add locks supportlinsui2023-08-15
| | | |
| * | | nixos/dconf: add settings supportlinsui2023-08-15
| | | |
| * | | nixos/dconf: refractorlinsui2023-08-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | remove `with lib;` profiles option now accepts packages in addition to paths. profiles option is no longer internal. cfgDir definition has been inlined. pulled GIO_EXTRA_MODULES inside mkif. removed pointless comments with section headings. defined profiles are now turned into package, allowing to simplify the db update logic.
* | | | Merge pull request #222515 from codedownio/tmux-run-plugins-lastFranz Pletz2023-08-26
|\ \ \ \
| * | | | tmux: add extraConfigBeforePluginsTom McLaughlin2023-08-05
| | | | |
* | | | | Merge pull request #248748 from acid-bong/zshLsColorsIlan Joselevich2023-08-24
|\ \ \ \ \ | | | | | | | | | | | | nixos/zsh: add enableLsColors
| * | | | | nixos/zsh: add enableLsColorsAcid Bong2023-08-12
| | |/ / / | |/| | | | | | | | | | | | | Borrowed from nixos/bash/ls-colors module
* | | | | nixos/htop: fix boolean values in settings optionTobias Widmann2023-08-20
| | | | | | | | | | | | | | | | | | | | | | | | | When generating htoprc, in order to be recognized by htop, a boolean value of 'false' should be written as '0', not an empty string.
* | | | | nixos/environment: stop setting ASPELL_CONFLin Jian2023-08-16
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We set[1] ASPELL_CONF to the last nix profile containing lib/aspell in 2013. In 2017, aspell is patched[2] to search NIX_PROFILES, which makes [1] not needed any more. Deleting it is also agreed in this discussion[3]. [1]: 0192c027203efa9b7b4d6516d8d5ae322e76c6bd [2]: ba4cefe4ae70cfb9121281f508ed5d9fa9dbc662 [3]: https://github.com/NixOS/nixpkgs/pull/30234
* | | | Merge pull request #248131 from Ma27/captive-browser-setcapMaximilian Bosch2023-08-12
|\ \ \ \ | | | | | | | | | | nixos/captive-browser: drop setcap wrapper for captive-browser
| * | | | nixos/captive-browser: drop setcap wrapper for captive-browserMaximilian Bosch2023-08-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since Linux 5.7 it's possible to set `SO_BINDTODEVICE` via `setsockopt(2)` as unprivileged user if this operation doesn't imply escaping a VRF interface[1]. Dropping the wrapper is actually desirable because `captive-browser` itself doesn't drop capabilities and as a result, the capabilities are passed on to `chromium` itself[2]. For older kernels, this is still necessary, hence the wrapper will only be added nowadays if the kernel is older than 5.7. [1] https://github.com/torvalds/linux/commit/c427bfec18f2190b8f4718785ee8ed2db4f84ee6 [2] https://github.com/FiloSottile/captive-browser/blob/08450562e58bf9564ee98ad64ef7b2800e53338f/bind_device_linux.go#L11-L14 and because our setcap wrapper makes all capabilities inheritable.
* | | | | Merge pull request #247008 from fufexan/hyprlandIlan Joselevich2023-08-12
|\ \ \ \ \ | | | | | | | | | | | | Update hyprwm packages and nixos/hyprland
| * | | | | nixos/hyprland: remove xwayland.hidpiMihai Fufezan2023-08-08
| | |/ / / | |/| | |