{ pkgs, ... }: { imports = [ ./hardware-configuration.nix ]; boot.loader.grub = { efiSupport = true; efiInstallAsRemovable = true; device = "nodev"; }; beatific.hostName = "centroid"; beatific.defaults = { nebula = false; tvbSync = false; }; networking.networkmanager.enable = true; services.pipewire = { enable = true; alsa.enable = true; alsa.support32Bit = true; pulse.enable = true; # To avoid needing an active user session, run a single system instance systemWide = true; }; environment.systemPackages = with pkgs; [ mpv # cli media player ]; users.users.tvb.extraGroups = [ "mopidy" "networkmanager" "pipewire" ]; users.groups.mopidy = {}; # rw group for media directory users.users.mopidy.extraGroups = [ "mopidy" "pipewire" # necessary to allow the system service to play sound ]; services.mopidy = let mopidy-ytdlp = pkgs.callPackage ./mopidy-youtube.nix { }; in { enable = true; extensionPackages = with pkgs; [ mopidy-musicbox-webclient # Replace the default mopidy-youtube, which doesn't have yt-dlp or a way to inject it mopidy-ytdlp ]; configuration = '' [file] media_dirs = /media/music|Music [youtube] youtube_dl_package = yt_dlp ''; }; system.stateVersion = "23.11"; }