Commit Graph

155 Commits

Author SHA1 Message Date
Bernardo Meurer
0aadd405a3
services.roon-server: fix binary path 2020-07-23 11:38:13 -07:00
Atemu
206dc0cfac spotifyd: make option link clickable 2020-07-14 08:34:28 +02:00
Doron Behar
35521e4ea7
Merge pull request #95599 from doronbehar/module/mpd/passwordFile
nixos/mpd: Allow to configure a credentialsFile
2020-09-11 09:11:13 +03:00
Doron Behar
b4756fe0c4 nixos/mpd: Mention in /etc/mpd.conf it was autogenerated 2020-09-10 18:00:29 +03:00
Doron Behar
ccee8dc09f nixos/mpd: Allow to configure a credentialsFile
Allow to specify a password file to be located outside the store, and be
read in `ExecStartPre`.
2020-08-16 18:03:47 +03:00
Dominique Martinet
a4763da299 nixos/mpd: add services.mpd.fluidsynth option
fluidsynth is compiled in but soundfont-fluid needs to be explicitely
pulled in and path configured, an option makes it much simpler to use
2020-05-10 23:05:19 +02:00
Dominique Martinet
d8fa2627f3 mpd: remove user/group from conf
the options should not be set as we already change user with service
file, man mpd.conf says "Do not use this option if you start MPD as an
unprivileged user"

The group option actually is not documented at all anymore and probably
no longer exists.

These options get in the way of setting up confinement for the service,
as it would otherwise be pretty straightforward to setup, but even if
mpd is not root it would check the user exists within the chroot which
is more work (need to get nss working):

  systemd.services.mpd = {
    serviceConfig.BindPaths = [
      # mpd state dir
      "/var/lib/mpd"
      # notify systemd service started up
      "/run/systemd/notify"
    ];
    serviceConfig.BindReadOnlyPaths = [
      "/path/to/music:/var/lib/mpd/music"
    ];
    # ProtectSystem is not compatible with confinement
    serviceConfig.ProtectSystem = lib.mkForce false;
    confinement = {
      enable = true;
      binSh = null;
      mode = "chroot-only";
    };
  };
2020-05-10 20:24:33 +02:00
Thibaut Marty
4a0beed5c0 treewide: fix modules options types where the default is null
They can be caught with `nixos-option -r` on an empty ({...}:{}) NixOS
configuration.
2020-04-28 19:13:59 +02:00
adisbladis
5340ebe085
mopidy: Create a mopidyPackages set
This is to avoid mixing python versions in the same plugin closure.
2020-04-17 12:39:03 +01:00
Daniel Albert
7a2e940a3f nixos/mpd: allow autostart when listening for unix socket 2020-03-07 20:02:25 +01:00
rnhmjoj
2ad680ac73
nixos/alsa: replace list by attrset in environment.etc 2020-02-14 01:17:18 +01:00
Kevin Rauscher
05b4fe20a7 mopidy: update to python3
mopidy: 2.3.1 -> 3.0.1
mopidy-iris: 3.43.0 -> 3.44.0
mopidy-spotify: 3.1.0 -> 4.0.1
pykka: 1.2.0 -> 2.0.1
2020-02-10 09:53:13 +01:00
rnhmjoj
1d61efb7f1 treewide: use attrs instead of list for types.loaOf options 2020-01-06 10:39:18 -05:00
Silvan Mosberger
4ee3e8b21d
nixos/treewide: Move rename.nix imports to their respective modules
A centralized list for these renames is not good because:
- It breaks disabledModules for modules that have a rename defined
- Adding/removing renames for a module means having to find them in the
central file
- Merge conflicts due to multiple people editing the central file
2019-12-10 02:51:19 +01:00
Alex Guzman
752b8688b5 nixos/roon-server: fix broken user generation
Didn't notice this till I tried removing my custom roon user from the one I was testing with. There's not a 'groups' option for users, only group (primary group) and extraGroups. Use these.
 (#68337)
2019-11-29 23:50:10 +01:00
tobim
4a9d5493b7 mpd: 0.20.13 -> 0.21.16 (#57608)
* Refactor mpd

* mpd: 0.20.13 -> 0.21.5

Switch to meson based build, following upstream.

* Fix mpd on darwin

* mpd: 0.21.5 -> 0.21.6

* mpd-small: init add 0.21.6

* Update to 0.21.8 & fix ouput path

Also use pname instead of name.

* Update to 0.21.9

* Integrate review suggestions

- Expose run function as mpdWithFeatures.
- Throw on invalid feature requests.
- Drop major/minor version variables.
- Cosmetic improvements.

* Update to 0.21.10

* mpd: 0.21.10 -> 0.21.11

* mpd: 0.21.11 -> 0.21.12

* mpd: log to journal

* mpd: 0.21.12 -> 0.21.14

* mpd: add tobim to maintainers

* mpd: reenable syslog support

* mpd: 0.21.14 -> 0.21.15

* mpd: 0.21.15 -> 0.21.16
2019-11-13 15:38:46 +00:00
Matthias Beyer
4e3aa7b7b8 mpd: restart always
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-10-22 16:30:14 +02:00
Janne Heß
d6c08776ba treewide: Switch to system users 2019-10-12 22:25:28 +02:00
Mario Rodas
54433c443b
nixos/spotifyd: update spotifyd flags 2019-09-21 17:10:00 -05:00
volth
7b8fb5c06c treewide: remove redundant quotes 2019-09-08 23:38:31 +00:00
Vladimír Čunát
f21211ebfe
Merge branch 'master' into staging 2019-09-02 23:25:24 +02:00
Silvan Mosberger
478e7184f8
nixos/modules: Remove all usages of types.string
And replace them with a more appropriate type

Also fix up some minor module problems along the way
2019-08-31 18:19:00 +02:00
Frederik Rietdijk
5061fe0c2c Merge staging-next into staging 2019-08-28 08:26:42 +02:00
volth
35d68ef143 treewide: remove redundant quotes 2019-08-26 21:40:19 +00:00
Alex Guzman
9fec6dfa39 roon-server: add back state directory 2019-08-09 22:21:46 -07:00
Alex Guzman
d830ae9af3 [roon-server] Use non-deprecated string type 2019-08-09 13:02:46 -07:00
Alex Guzman
9f9b458ce3 [roon-server] don't create user if user changes defaults
If the user changes the user for roon, we can assume they handled the setup for it
2019-08-07 13:23:36 -07:00
Alex Guzman
6572b5e4a1 [roon-server] make roon user a system user 2019-08-07 13:12:57 -07:00
Alex Guzman
f160233793 roon-server: let nix assign ids 2019-08-07 12:34:52 -07:00
Alex Guzman
62d242d1cd roon-server: Add actual user piping
Adds defined IDs
2019-08-07 12:27:52 -07:00
Alex Guzman
8becc897ea roon-server: disable DynamicUser
DynamicUser currently breaks the backup functionality provided by roon,
as the roon server cannot write to non-canonical directories and the
recycled UIDs/GIDs would make managing permissions for the directory
impossible. On top of that, it would break the ability to manage the
local music library files (as it would not be able to delete them).
2019-08-07 11:57:42 -07:00
Anders Lundstedt
53841fcea9 nixos/spotifyd: init 2019-07-21 00:58:20 +02:00
Peter Hoeg
10dd03e0a3
Merge pull request #63551 from Steell/roon-server
roon-server: init at 100600401
2019-07-02 10:06:29 +08:00
Graham Christensen
38c28ef10c
Merge pull request #56265 from aanderse/permissions-start-only
replace deprecated usage of PermissionsStartOnly (part 2)
2019-06-25 18:04:22 -04:00
Steve Elliott
725e2793dd roon-server: init at 100600401 2019-06-25 09:34:07 -04:00
volth
f3282c8d1e treewide: remove unused variables (#63177)
* treewide: remove unused variables

* making ofborg happy
2019-06-16 19:59:05 +00:00
gnidorah
fe01afae42 nixos/jack: option to adjust dmix buffering (#62854) 2019-06-09 11:40:22 +02:00
gnidorah
ea82b7f98d nixos/jack: init 2019-05-30 07:25:30 +03:00
Aaron Andersen
d33c64eec8 nixos/slimserver: replace deprecated usage of PermissionsStartOnly
see https://github.com/NixOS/nixpkgs/issues/53852
2019-05-26 07:20:55 -04:00
Aaron Andersen
a8defe81d1 nixos/mopidy: replace deprecated usage of PermissionsStartOnly
see https://github.com/NixOS/nixpkgs/issues/53852
2019-05-25 13:48:41 -04:00
Aaron Andersen
919c87a106 nixos/mpd: replace deprecated usage of PermissionsStartOnly
see https://github.com/NixOS/nixpkgs/issues/53852
2019-04-13 07:00:56 -04:00
Aaron Andersen
5f9a639f69 nixos/liquidsoap: replace deprecated usage of PermissionsStartOnly
see https://github.com/NixOS/nixpkgs/issues/53852
2019-04-13 07:00:55 -04:00
Matthias Beyer
31884f788e ympd service: Allow webPort to be int
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-12 18:17:10 +02:00
Silvan Mosberger
502a4263a3
Merge pull request #55936 from tobim/modules/snapserver
nixos/snapserver: init
2019-03-07 00:00:48 +01:00
Tobias Mayer
085751b63b nixos/snapserver: init
A nixos module for configuring the server side of pkgs.snapcast.
The module is named "snapserver" following upstream convention.
This commit does not provide module for the corresponding client.

Fix handling of port and controlPort

Fix stream uri generation & address review

Remove unused streams options & add description

Add missing description & Remove default fs path

Use types.port for ports & formatting improvements

Force mpd and mopidy to wait for snapserver
2019-03-06 23:40:05 +01:00
Will Dietz
b5c0aa9ea3
squeezelite: fix 'cfg' reference (#56271) 2019-02-23 18:28:02 -06:00
Peter Hoeg
440556a77c nixos squeezelite: run using DynamicUser 2018-10-10 17:41:18 +08:00
Johannes Frankenau
b9234ea49c nixos/mpd: allow storage plugins in musicDirectory 2018-08-03 21:36:38 +02:00
Florian Klink
fff5923686 nixos/modules: users.(extraUsers|extraGroup->users|group) 2018-06-30 03:02:58 +02:00
Robert Helgesson
323c2a1c6b
mpd: fix spelling in description 2018-06-03 09:55:26 +02:00
Andreas Rammhold
a0797bad2c
nixos/mpd: allow services.mpd.dbFile to be null
This change allows users to specify an alternative database method. For
example an mpd satellite setup where another mpd on the network shares
it's database with the local instance. The `dbFile` parameter must not be
configured in that case.
2018-06-01 19:17:15 +02:00
Philipp Hausmann
32bad1b636 nixos/slimserver: Disable broken image/video support (#40589) 2018-05-23 12:31:44 +02:00
Jan Malakhovski
5ec94de03c nixos: alsa: better docstring 2018-04-27 18:07:19 +01:00
Aristid Breitkreuz
e349ccc77f nixos/alsa: Do not make sound.enable conditional on stateVersion.
Eelco Dolstra wrote:

Hm, this is not really the intended use of stateVersion. From the description:

        Every once in a while, a new NixOS release may change
        configuration defaults in a way incompatible with stateful
        data. For instance, if the default version of PostgreSQL
        changes, the new version will probably be unable to read your
        existing databases. To prevent such breakage, you can set the
        value of this option to the NixOS release with which you want
        to be compatible. The effect is that NixOS will option
        defaults corresponding to the specified release (such as using
        an older version of PostgreSQL).

So this is only intended for options that have some corresponding on-disk state. AFAICT this is not the case for sound. In any case stateVersion is a necessary evil that only exists because we can't just upgrade Postgres databases or change SSH host keys. It's not necessary for things like whether sound is enabled. (If the user discovers that sound is suddenly disabled, they can just enable it.)

I had some vague recollection that we also had a configVersion option setting to control the defaults for non-state-related options, but I can't find it so maybe it was only discussed.
2018-02-23 23:14:42 +01:00
Aristid Breitkreuz
a43e33d0e4 nixos: disable sound by default, if stateVersion >= 18.03 (#35355) 2018-02-22 22:06:31 +00:00
Yegor Timoshenko
85b84527f6
mopidy: fix, resolves #32234 2018-01-08 14:32:36 +00:00
Casey Rodarmor
ae02dd2d0a nixos/mpd: allow configuring playlist directory (#28252) 2017-08-20 20:34:34 +00:00
Benno Fünfstück
1d78df2729 Merge pull request #27000 from Balletie/fix/pulseaudio-alsa-conf
pulseaudio: Resolve conflicting asound.conf of pulseaudio and alsa
2017-07-17 08:20:38 +02:00
Johannes Frankenau
c4528eb4cc mpd service: Start when needed and harden 2017-07-04 09:50:34 +02:00
Johannes Frankenau
0dd204ebfe mpd service: Create playlist directory 2017-07-01 09:13:49 +02:00
Balletie
44fadbb9bd
pulseaudio: Resolve conflicting asound.conf of pulseaudio and alsa
Fixes issue #25790.
2017-07-01 00:06:34 +02:00
Philipp Hausmann
c904e68e53 Remove static uid/gid 2017-03-18 13:54:39 +01:00
Philipp Hausmann
ffa0a87774 Remove unused options 2017-03-16 20:51:06 +01:00
Philipp Hausmann
0bd6fdcfc4 Cosmetics 2017-03-16 20:50:10 +01:00
Philipp Hausmann
45d8d6ebeb Add slimserver nixos module 2017-03-16 20:43:09 +01:00
Profpatsch
2b0469c48f modules/mpd: factor out name & mention man 5 mpd.conf 2017-02-18 16:03:16 +01:00
Jörg Thalheim
05f2f8e1fd Merge pull request #21505 from tg-x/mpd-listen
mpd: listen on 127.0.0.1 by default
2017-01-01 16:06:17 +01:00
tg(x)
002f3c8760 mpd: listen on 127.0.0.1 by default 2017-01-01 13:46:39 +01:00
Robin Stumm
11fe837758 rename sound.enableMediaKeys to sound.mediaKeys.enable and add volumeStep 2017-01-01 11:44:07 +01:00
Emery Hemingway
b675619391 nixos: use types.lines for extraConfig 2016-10-23 19:41:43 +02:00
Langston Barrett
25a7ded89c audio services: use mkEnableOption (#18524) 2016-09-12 04:47:08 +02:00
Joachim Fasting
0a6221578a
mpd service: replace script with serviceConfig.ExecStart 2016-09-10 18:30:14 +02:00
Joachim Fasting
009c1848c2
mpd service: add types to all options 2016-09-10 18:30:14 +02:00
Langston Barrett
77cedff4e7 ympd service: init (#18371)
ympd provides a web ui, it is suitable to be run as a service.
Fixes #17878.

service has no requirements b/c user might be using remote mpd
instance.
2016-09-10 18:23:39 +02:00
Langston Barrett
a28273df32 mopidy service: add default value for configuration (#17385)
Mopidy will start if the configuration is empty.

Fixes #17381.
2016-07-31 18:35:09 +02:00
Phil Wetzel
ccdf386a97 squeezelite service: init 2016-06-11 22:05:07 -04:00
Thomas Strobel
a04a7272aa Add missing 'type', 'defaultText' and 'literalExample' in module definitions
- add missing types in module definitions
- add missing 'defaultText' in module definitions
- wrap example with 'literalExample' where necessary in module definitions
2016-01-17 19:41:23 +01:00
Robin Gloster
af50b03f50 fuppes: remove obsolete broken package and service 2016-01-07 06:39:05 +00:00
Bjørn Forsman
79367816a9 nixos/mpd: rename 'host' to 'listenAddress'
More descriptive option name.
2015-12-24 00:04:04 +01:00
Spencer Whitt
3bc477e2f2 mopidy module: use buildEnv fixes #11706 2015-12-15 22:38:15 -05:00
Unai Zalakain
8811724ec9 The user specified in the conf should run MPD 2015-06-13 23:24:19 +02:00
Jan Malakhovski
57ab189e78 nixos: add actkbd module and sound.enableMediaKeys option 2015-04-20 17:11:19 +00:00
Rickard Nilsson
3620b27a66 mpd: Make it possible to specify db file path 2015-04-10 23:10:14 +02:00
aszlig
ea2fd84ecd
nixos/mpd: Fix creation of "mpd" group.
The group is specified using a singleton list, so the loaOf merging is
done by iterating through the list items with imap, so it enumerates
every element and sets that as the default "name" attribute.

From lib/types:143:

name = elem.name or "unnamed-${toString defIdx}.${toString elemIdx}";

So, people get groups like "unnamed-X.Y" instead of "mpd".

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Reported-by: devhell <"^"@regexmail.net>
Tested-by: devhell <"^"@regexmail.net>
2015-03-20 20:58:13 +01:00
koral
54857abfc9 Added icecast module. 2015-03-17 14:21:57 +00:00
koral
9c4cbaa553 Fix mpd configuration (enclosing quotes needed). 2015-03-14 12:15:34 +00:00
Unai Zalakain
581a90bad8 Optional user and group to run the MPD 2015-03-08 10:18:40 +00:00
Luca Bruno
d06122c58d Add PermissionsStartOnly to mpd service. Closes #6277 2015-02-10 10:18:54 +01:00
Benno Fünfstück
914b76bad4 services.mpd: use systemd's user option
For some reason, mpd fails to open the sound card if using mpd's user
option. Starting mpd directly as the mpd user works for me.
2014-12-22 11:22:14 +00:00
Emery Hemingway
21e4ff5624 initial liquidsoap service expression 2014-11-20 17:41:15 -05:00
Mateusz Kowalczyk
7fedb1baa6 Try fixing #4084 2014-09-21 07:04:01 +01:00
Dmitry Malikov
08cc8da65a mpd service: add network.{host,port} options
Closes #4084
2014-09-21 01:43:06 +01:00
aszlig
8a56a55bb4
nixos/manual: Use literalExample when feasible.
Should bring most of the examples into a better consistency regarding
syntactic representation in the manual.

Thanks to @devhell for reporting.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-08-27 23:41:15 +02:00
Rickard Nilsson
66858833e3 mopidy: Add mopidy-scan service for scanning local media 2014-08-12 01:40:44 +02:00
Rickard Nilsson
212f476c97 Add NixOS module for Mopidy, a music player daemon 2014-07-28 19:52:32 +02:00
third3ye
9c83a6bc76 Minor logic fix
music_directory     "${cfg.musicDirectory}"
playlist_directory  "${cfg.dataDir}/playlists"
db_file             "${cfg.dataDir}/tag_cache"
state_file          "${cfg.dataDir}/state"
sticker_file        "${cfg.dataDir}/sticker.sql"

all refer to ${cfg.datadir}, which by default is "/var/lib/mpd/". 

Parsing for instance ${cfg.datadir}/playlists results in:
/var/lib/mpd//playlists - NOT FOUND.
2014-06-17 03:24:39 +00:00
Peter Simons
c18775837c nixos/modules/services/audio/alsa.nix: fix evaluation
https://github.com/NixOS/nixpkgs/issues/2732
2014-05-23 19:20:49 +02:00
Arseniy Seroka
dc8625305a fix mistake 2014-05-23 14:58:07 +04:00
Arseniy Seroka
c84d81541e alsa: add option to change system wide configuration 2014-05-23 14:53:24 +04:00
Eelco Dolstra
29027fd1e1 Rewrite ‘with pkgs.lib’ -> ‘with lib’
Using pkgs.lib on the spine of module evaluation is problematic
because the pkgs argument depends on the result of module
evaluation. To prevent an infinite recursion, pkgs and some of the
modules are evaluated twice, which is inefficient. Using ‘with lib’
prevents this problem.
2014-04-14 16:26:48 +02:00