Compare commits
	
		
			1 Commits
		
	
	
		
			gitea-navb
			...
			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