Compare commits
	
		
			1 Commits
		
	
	
		
			gitea-vask
			...
			spotifyd
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| c7cc9ab029 | 
| @@ -7,6 +7,7 @@ | |||||||
|       ../../misc/metrics-exporters.nix |       ../../misc/metrics-exporters.nix | ||||||
|  |  | ||||||
|       ../../modules/grzegorz.nix |       ../../modules/grzegorz.nix | ||||||
|  |       ../../modules/spotifyd.nix | ||||||
|     ]; |     ]; | ||||||
|  |  | ||||||
|   boot.loader.systemd-boot.enable = true; |   boot.loader.systemd-boot.enable = true; | ||||||
|   | |||||||
							
								
								
									
										44
									
								
								modules/spotifyd.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								modules/spotifyd.nix
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,44 @@ | |||||||
|  | { lib, config, ... }: | ||||||
|  |  | ||||||
|  | { | ||||||
|  |  | ||||||
|  |   services.spotifyd.enable = true; | ||||||
|  |   # https://docs.spotifyd.rs/config/File.html | ||||||
|  |   services.spotifyd.settings = { | ||||||
|  |     device_name = "${config.networking.hostName}-spotifyd"; | ||||||
|  |     device_type = "t_v"; # in ["unknown" "computer" "tablet" "smartphone" "speaker" "t_v"], | ||||||
|  |     bitrate = 160; # in [96 160 320] | ||||||
|  |     volume_normalisation = true; | ||||||
|  |     zeroconf_port = 44677; # instead of user/password | ||||||
|  |  | ||||||
|  |     # this is the place you add blinkenlights | ||||||
|  |     #on_song_change_hook = "rm -rf / --no-preserve-root"; | ||||||
|  |   }; | ||||||
|  |  | ||||||
|  |   systemd.services.spotifyd.serviceConfig = { | ||||||
|  |     SupplementaryGroups = [ | ||||||
|  |       "audio" | ||||||
|  |       "pipewire" | ||||||
|  |     ]; | ||||||
|  |   }; | ||||||
|  |  | ||||||
|  |   services.avahi.enable = true; | ||||||
|  |   services.avahi.publish.enable = true; | ||||||
|  |   services.avahi.publish.addresses = true; | ||||||
|  |   services.avahi.publish.domain = true; | ||||||
|  |   services.avahi.extraServiceFiles.spotifyd = '' | ||||||
|  |     <?xml version="1.0" standalone='no'?><!--*-nxml-*--> | ||||||
|  |     <!DOCTYPE service-group SYSTEM "avahi-service.dtd"> | ||||||
|  |     <service-group> | ||||||
|  |       <name replace-wildcards="yes">%h</name> | ||||||
|  |       <service> | ||||||
|  |         <type>_spotify-connect._tcp</type> | ||||||
|  |         <port>${builtins.toString config.services.spotifyd.settings.zeroconf_port}</port> | ||||||
|  |       </service> | ||||||
|  |     </service-group> | ||||||
|  |   ''; | ||||||
|  |  | ||||||
|  |   networking.firewall.allowedTCPPorts = [ config.services.spotifyd.settings.zeroconf_port ]; | ||||||
|  |   networking.firewall.allowedUDPPorts = [ 5353 ]; # mDNS | ||||||
|  |  | ||||||
|  | } | ||||||
		Reference in New Issue
	
	Block a user