{"id":29182662,"url":"https://github.com/masdxi/audio-server-script","last_synced_at":"2025-08-29T02:33:42.298Z","repository":{"id":300918520,"uuid":"1007583816","full_name":"MASDXI/audio-server-script","owner":"MASDXI","description":"Script for set up audio server","archived":false,"fork":false,"pushed_at":"2025-07-13T09:22:52.000Z","size":41,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-13T11:32:17.663Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MASDXI.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-24T08:09:31.000Z","updated_at":"2025-07-13T09:22:55.000Z","dependencies_parsed_at":"2025-06-24T09:28:25.818Z","dependency_job_id":"c4b60fbf-7e5d-4464-9c23-167413e5f5bf","html_url":"https://github.com/MASDXI/audio-server-script","commit_stats":null,"previous_names":["multimedia182/audio-server-script"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/MASDXI/audio-server-script","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MASDXI%2Faudio-server-script","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MASDXI%2Faudio-server-script/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MASDXI%2Faudio-server-script/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MASDXI%2Faudio-server-script/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MASDXI","download_url":"https://codeload.github.com/MASDXI/audio-server-script/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MASDXI%2Faudio-server-script/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272611999,"owners_count":24964385,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-29T02:00:10.610Z","response_time":87,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-07-01T20:30:30.601Z","updated_at":"2025-08-29T02:33:42.284Z","avatar_url":"https://github.com/MASDXI.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# audio-server-script  \n\nA Linux setup script for high-fidelity, headless audio playback. Optimized for bit-perfect output via `PipeWire`, with support for `Audirvana`, and `Spotify`.\n\n## Preparing operating system configuration\n\nSet current user allow to `NOPASSWD`\n\n``` shell\nsudo visudo\n```\n\nAdd this line to the configuration.\n``` text\n$USER ALL=(ALL) NOPASSWD:ALL\n```\n\nDelete password form current user.\n``` shela\nsudo passwd -d $USER\n```\n\nPriority `audio` process by config `/etc/security/limits.d/audio.con`\n\nAdd this line for allowing `audio` process priority to `95` and allow using memory `unlimited`.\n``` text\n@audio   -  rtprio     95\n@audio   -  memlock    unlimited\n```\n\nAdd current user to `audio`, if `audio` group not exist it's will create.\n\n```\ngetent group audio || sudo groupadd audio \u0026\u0026 sudo usermod -aG audio $USER\n```\n\nChange `/usr/share/pipewire/pirewire.conf`, let `pipewire` change clock rates to avoid unintended upsampling/resampling.  \n\n``` shell\nmkdir -p .config/pipewire\n```\n\nCopy `pipewire.conf` to `.config/pipewire`\n\n``` shell\nsudo cp /usr/share/pipewire/pipewire.conf .config/pirewire\n```\n\nEdit uncomment `default.clock.allowed-rates` line.\n\n``` text \ndefault.clock.allowed-rates = [ 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 76800, 1311200, 1536000 ]\n``` \n\nCopy `client.conf` and `pipewire-pulse.conf` to `.config/pipewire`\n\n``` shell\nsudo cp /usr/share/pipewire/client.conf .config/pirewire\nsudo cp /usr/share/pipewire/pipewire-pulse.conf .config/pirewire\n```\n\nEdit uncomment `resample.quality` and add `resample.disable` to both file\n\n``` text\nresample.disable = true\nresample.quality = 0\n``` \n\nRestart the `pipewire` service.\n\n``` shell\nsystemctl --user restart pipewire.service pipewire-pulse.service\n```\n\nDisable power-off confirmation for convenience use in headless setup.\n\n``` shell\ngsettings set org.gnome.SessionManager logout-prompt false\n```\n\nDisable GUI visual-effect.\n\n``` shell\ngsettings set org.gnome.desktop.interface enable-animations false\n```\n\nDisable System sound.\n\n``` shell\ngsettings set org.gnome.desktop.sound event-sounds false\n```\n\n\u003e [!IMPORTANT]\n\u003e If you installing `WiFi` module e.g., pci-e, usb dongle on your system, you should connect to your network before going to installing software step.\n\n## Installing streaming service software\n\nTo install `audirvana` using command:\n``` shell\n./audirvana-setup.sh\n```\n\n\u003c!-- TODO --\u003e\n\u003c!-- To install `roon` using command:\n``` shell\n./roon-setup.sh\n``` --\u003e\n\nTo install `spotify` using command:\n``` shell\n./spotifyd-setup.sh\n```\n\n\u003e [!NOTE]\n\u003e The `hostname` use as default device name of `audirvana` and `spotify`.\n\n## TODO \n\nConsidered to support other streaming service, library and playback software.\n\n`electron` wrapped application\n- `apple-music-desktop` for Apple Music\n- `deezer-linux` for Deezer\n- `qobuz-linux` for Qobuz\n- `tidal-hifi` for Tidal\n- `ytmdesktop` for Youtube Music\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmasdxi%2Faudio-server-script","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmasdxi%2Faudio-server-script","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmasdxi%2Faudio-server-script/lists"}