GithubHelp home page GithubHelp logo

kyleslugg / unoffical-sonos-controller-for-linux Goto Github PK

View Code? Open in Web Editor NEW

This project forked from pascalopitz/unoffical-sonos-controller-for-linux

0.0 0.0 0.0 5.26 MB

An Electron based linux app for controlling your sonos system.

Home Page: http://pascalopitz.github.io/unoffical-sonos-controller-for-linux/

License: MIT License

Shell 0.01% JavaScript 91.83% CSS 8.01% HTML 0.15%

unoffical-sonos-controller-for-linux's Introduction

No Maintenance Intended

This project is deprecated. I do not intend to do any more work on it.

Build Status

Unofficial Sonos Controller for Linux

First I was tinkering with Chrome apps and sonos. I released this as a Chrome app. Subsequently Chrome apps turned out to be a dying platform, so I've moved over to Electron. The project is written in mostly ES6 and utilizes React and Redux to manage the UI

Why?

I use Ubuntu as my main OS, and there's no decent controller app. So I am aiming to at some point provide a usable sonos controller that can run on Linux also, installed via deb file. Maybe it won't have all the functions of the real sonos player, but if I can browse the library, Spotify and manage the queue, I'll be pretty damn happy.

Install via snap

Since v0.2.0-alpha1 the app gets published to snapcraft.

snap install --edge sonos-controller-unofficial

Install via .AppImage file

Find the latest .AppImage on the release page. You can right click it on Ubuntu, then under "Permissions" mark is as executable. ALternatively run:

chmod +x sonos-controller-unofficial-amd64-0.3.0-alpha5.AppImage

After that it can be launched by double click or via invoking it through the terminal.

To create a .desktop entry in Ubuntu, add it under something like ~/.local/share/applications/unoffical-sonos-controller-for-linux.desktop with the following content, of course referencing the right file)= location and version:

#!/usr/bin/env xdg-open
[Desktop Entry]
Terminal=false
Type=Application
Categories=Audio;
Name=sonos-controller-unofficial
Icon=appimagekit-sonos-controller-unofficial
Exec="/home/username/Downloads/sonos-controller-unofficial-0.3.0-alpha5.AppImage" %U

Install via .deb file

Find the latest .deb on the release page. On Ubuntu, you can double click the downloaded file to install it via the Software Center. Alternatively run

sudo dpkg -i sonos-controller-unofficial_0.3.0-alpha5_amd64.deb

and Run locally

You will need an installed and fairly recent version (>=13) of nodejs for this. Generating artefacts might require some additional binaries, like graphicsMagick and icnsutils, which you can install via apt.

Clone the git repository and cd into the project folder. Then initialize the project by running:

npm install

Start the electron app in develop mode:

npm run develop

Building the packaged artefacts:

npm run dist

Firewall settings

You will need to whitelist these if you run Ubuntu firewall for example:

  • TCP 1400 outgoing
  • TCP 4000 incoming
  • UDP 1900 outgoing
  • UDP 1905 incoming
  • TCP 13453 outgoing (for local file server)

Troubleshooting

Q: The app keeps searching for my Sonos system

Device discovery utilizes the Simple Service Discovery Protocol over IPv4 and relies on multicast IP addresses and UDP messages.

Make sure you check the Firewall settings above are applied correctly.

If all ports are open and search still doesn not work, but you know the IP address of one of the devices, you can add an IP manually by using the developer menu option.

Contributions

Feel free to fork and create pull requests. Any help with the variety of music services would be most welcome.

Issues

For any issues, please submit them on the issues page.

Before you do, make sure you check the Firewall settings above are applied correctly.

To provide more context please take the time and attach a copy of your current app state. You can do this by using the "Save app state to file" option in the Developer menu.

Thanks to other projects

Please refer to the above projects' licenses (MIT), where they apply.

unoffical-sonos-controller-for-linux's People

Contributors

basster avatar davidmn avatar dependabot[bot] avatar dertobsch avatar economysizegeek avatar kivulallo avatar lloyda avatar pascalopitz avatar pjetherton avatar rgson avatar s1037989 avatar wapacro avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.