Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sonic Pi binaries in Ubuntu PPA: Please test & report back #827

Closed
hzulla opened this issue Nov 25, 2015 · 100 comments
Closed

Sonic Pi binaries in Ubuntu PPA: Please test & report back #827

hzulla opened this issue Nov 25, 2015 · 100 comments

Comments

@hzulla
Copy link
Collaborator

hzulla commented Nov 25, 2015

Hi,

there is a Sonic Pi binary PPA on launchpad.net and it needs beta-testers. The ppa repository provides precompiled binary .deb packages of Sonic Pi and the Supercollider SC3 UGen plugins for Ubuntu version 14.04 ("trusty"), 15.04 ("vivid") and 15.10 ("wily").

To use them, do this:

sudo add-apt-repository ppa:sonic-pi/ppa
sudo apt-get update
sudo apt-get install sonic-pi

You can then start the application through your desktop's menu or with /usr/bin/sonic-pi.

This is beta, so expect things to break. Please test and report back problems here or on launchpad.

Thank you.


Update 1: The Sonic Pi PPA has now moved to "more official" location on Launchpad and the ppa download address was modified.

Update 2: Most users fail to start jackd. We're working on that. Until then, please read /usr/share/doc/sonic-pi-server/README-JACKD for help.

@hzulla
Copy link
Collaborator Author

hzulla commented Nov 25, 2015

Sonic Pi needs jackd, but the default config of jackd as installed by Ubuntu sometimes doesn't work as expected. This isn't a sonic-pi issue, but a jackd issue. I'm not sure if/how the sonic-pi package can help with this. Suggestions are welcome.

@hzulla
Copy link
Collaborator Author

hzulla commented Nov 25, 2015

One thing that needs testing are some of the more funky things one can do with the stand-alone server. To get things installed in a Linuxy way, the Sonic Pi libraries were installed in /usr/lib and the resources (e.g. samples) in /usr/share. It may be possible that the server doesn't find everything it needs. So please test, thanks.

@xavriley
Copy link
Collaborator

Great work Hanno! 🤘 I'll test as soon as I have time.

@xavriley
Copy link
Collaborator

screenshot 2015-11-26 11 18 39

Works great in an Ubuntu 14.04 (trusty) VM for me!

Steps to install (for my future benefit when I forget).

$ sudo vi /etc/apt/sources.list.d/sonic-pi.list

and write the following to that file

deb http://ppa.launchpad.net/hzulla/sonic-pi/ubuntu trusty main 
deb-src http://ppa.launchpad.net/hzulla/sonic-pi/ubuntu trusty main 

Then add the key by doing

$ sudo add-apt-repository ppa:hzulla/sonic-pi

(The first step may not be necessary but it's what I did...)

@hzulla
Copy link
Collaborator Author

hzulla commented Nov 26, 2015

Steps to install (for my future benefit when I forget).

Using add-apt-repository should create the file in /etc/apt/sources.list.d (and get the signing key) automatically.

@gmschroeder
Copy link

I ran this from the source on Ubuntu 14.04 LTS for a bit, then tried to run from this PPA. I had to completely remove everything the readme says to install prior to a from source install, then followed the instructions in an apt-get error message about a mess of qt5 dependencies. Among others, I had to manually install lqt5scintilla2, just off the top of my head.

Oh, and bd_808 appears to not make any noise. :p

@hzulla
Copy link
Collaborator Author

hzulla commented Nov 27, 2015

Could you provide the error message?

Also, what Sonic Pi code did you try to play the bd_808 sample?

@gmschroeder
Copy link

No, I couldn't provide the error messages. I didn't write them down.
It complained that it didn't have needed libraries, all of which were
elements of qt5, when I had previously installed the qt4 elements listed as
necessary for Ubuntu 14.04 lts in the README. I removed said qt4 elements,
ran sudo apt-get install sonic-pi, then got a message asking for 5ish qt5
libraries.
It finally worked after I manually installed those qt5 libraries by
copy-pasting into an apt-get install command.

The Sonic Pi code was the built-in tutorial for playing :bd_haus at a dance
tempo, except :bd_808 instead of :bd_haus

On Fri, Nov 27, 2015 at 5:54 PM, Hanno Zulla notifications@github.com
wrote:

Could you provide the error message?

Also, what Sonic Pi code did you try to play the bd_808 sample?


Reply to this email directly or view it on GitHub
#827 (comment).

@hzulla
Copy link
Collaborator Author

hzulla commented Nov 28, 2015

@gmschroeder the :bd_808 isn't quite as loud as the :bd_haus. Maybe you just need to turn up the volume?

The Ubuntu packages should install alongside other QT libs without a problem. I cannot replicate the problem you described and would need a more specific error message.

@gmschroeder
Copy link

(shrug) I had all my levels maxed out on a Lenovo G480, alsa, and the app.
It's still not working, but I guess I could route it through an amplifier
plugin or something.

On Sat, Nov 28, 2015 at 6:34 PM, Hanno Zulla notifications@github.com
wrote:

@gmschroeder https://github.com/gmschroeder the :bd_808 isn't quite as
loud as the :bd_haus. Maybe you just need to turn up the volume?

The Ubuntu packages should install alongside other QT libs without a
problem. I cannot replicate the problem you described and would need a more
specific error message.


Reply to this email directly or view it on GitHub
#827 (comment).

@hzulla
Copy link
Collaborator Author

hzulla commented Nov 29, 2015

Is the sample file found in /usr/share/sonic-pi/samples? What happens when you play it outside of Sonic Pi with a different media player program?

@hzulla
Copy link
Collaborator Author

hzulla commented Nov 29, 2015

Also, did you run /usr/bin/sonic-pi or your self compiled version?

@halla
Copy link

halla commented Nov 29, 2015

Works great for me on 14.04, thanks!

@gmschroeder
Copy link

Hanno: I ran the self-compiled version and usr/bin/sonic-pi version
separately, both didn't work. The bd_808 file is is
/usr/share/sonic-pi/samples , at least in the pre-compiled version.

On Sun, Nov 29, 2015 at 6:54 AM, Antti Halla notifications@github.com
wrote:

Works great for me on 14.04, thanks!


Reply to this email directly or view it on GitHub
#827 (comment).

@itsdeadguy
Copy link

It installed just fine for me, but it refuses to acknowledge any of the ruby versions i have installed. As soon as i open it, i get an error message stating it couldn't find ruby because it's not added to PATH (which it is, i quadruple checked).
I tried this with the system default version 1.9.3 and with two rvm installed versions 2.0.0 and 2.2.1.
I'm on Mint 17.2 64bit.

P.S: thank you for the sc3-plugins pack :)

@hzulla
Copy link
Collaborator Author

hzulla commented Dec 1, 2015

@gmschroeder sorry, I cannot reproduce your problem here. If one sample plays ok, the other one should play as well. Since you seem to have this problem with both a self-compiled and the PPA binary, there must be something funky going on with your computer. Could you please have a look into the log files in ~/.sonic-pi/log/ and see if you find any error message that could point to this?

@CadaverLab thanks for the feedback. Could you please do a /usr/bin/ruby -v and report back the result?

@jrobinson-uk
Copy link

Just tried the PPA on ubuntu 15.10.
Install fine, runs (eventually) but doesn't run code.
Any code, whenever you run it doesn't:

  • generate any log data
  • make any sound
  • report any syntax errors

@hzulla
Copy link
Collaborator Author

hzulla commented Dec 1, 2015

@jrobinson-uk please try starting jackd with qjackctl before Sonic Pi and start again.

@rbnpi
Copy link
Contributor

rbnpi commented Dec 1, 2015

Exactly what I found on 15.10.
This is what worked for me. (Sent to you before) I think I’ve solved the problem with jackd. I got the answer from this article
http://jackaudio.org/faq/linux_rt_config.html
Section 2 is relevant to Ubuntu. Apparently the user needs to be a member of a group realtime which you have to create.
groupadd realtime
usermod -a -G realtime yourUserID
After this log out and log in again.
then type /usr/bin/sonic-pi
And all is sweetness and light!!!
I think QjackCtl is able to bypass this, or has it written in somehow, which is why it works that

On 1 Dec 2015, at 10:26, Hanno Zulla notifications@github.com wrote:

@jrobinson-uk please try starting jackd with qjackctl before Sonic Pi and start again.


Reply to this email directly or view it on GitHub.

@hzulla
Copy link
Collaborator Author

hzulla commented Dec 1, 2015

@rbnpi yes, thanks. I still wonder where to put this. The sonic-pi package isn't the right place to put the user into the realtime group.

@hzulla
Copy link
Collaborator Author

hzulla commented Dec 1, 2015

@CadaverLab There is a new version of the sonic pi packages up on Launchpad, please try upgrading and let me know if it worked. However, I'd still be thankful if you could also send me the output of /usr/bin/ruby -v to help identify the problem.

@jrobinson-uk
Copy link

@rbnpi Tried the steps you suggested, Sonic Pi now tries to execute the script but stops at first line.

Whilst jackd is running no other sound/video playback works. Rhythmbox won't play, youtube videos load but don't play in chrome, something weird going on. Then Jack won't quit and I have to reboot.

@hzulla
Copy link
Collaborator Author

hzulla commented Dec 1, 2015

@jrobinson-uk does it help if you do sudo apt-get install pulseaudio-module-jack and try again?

@itsdeadguy
Copy link

@hzulla will try updating the package and report back.
in the meantime /usr/bin/ruby -v outputs ruby 1.9.3p484 (2013-11-22 revision 43786) [x86_64-linux]

@itsdeadguy
Copy link

Updated, no change sadly. The actual error message (for completion's sake i suppose) says

Apologies, a critical error occurred during startup:
 Ruby could not be started, is it installed and in your PATH?

There's a "show details" button which comes up with this wall of text
I'm not sure how relevant this may be, but all my JACKing around is handled through Cadence, which comes from the KXStudio repos.

@hzulla
Copy link
Collaborator Author

hzulla commented Dec 1, 2015

@CadaverLab That log seems to say that Sonic Pi cannot connect to jackd. But something weird is going in your log. The ppa binary installs Sonic Pi in /usr, but your log mentions /opt/sonic-pi/.

  • is there a directory /opt/sonic-pi/ on your computer? Does it contain any files?
  • can you start jackd manually with qjackctl before starting Sonic Pi?
  • is there a binary /usr/bin/sonic-pi on your system? Can you start it from the command line?

@itsdeadguy
Copy link

There used to be a /opt/sonic-pi/ from when i tried compiling from source. It has since been deleted (i got some weird audio issues).

There is a /usr/bin/sonic-pi on my system, and I can start it from command line, but it throws the same error. I'm currently looking for some errant config file somewhere

@hzulla
Copy link
Collaborator Author

hzulla commented Dec 1, 2015

@Cadaverlab Please do rm -rf ~/.sonic-pi/ to delete all old logs. Start jackd manually with qjackctl, make sure it runs. Then try again please.

@hzulla
Copy link
Collaborator Author

hzulla commented Sep 8, 2016

If your package manager tries to download from the "/precise/" location, it means that your source list is wrong. It should be "/trusty/" there.

The instructions at the top of this issue thread are the most recent guide on what to do to get Sonic Pi and should work with trusty.

@seductiveapps
Copy link

ok ehm.. first off, i'm an instant fan of sonic_pi, since i discovered it about 12 hours ago..

however, i run sonic-pi 2.10 on Xenial Ubuntu (16.x.y), and i can't find a single way to upgrade to the recommended 2.11 sonic-pi, nor can i find a way to compile it from source. I did try, i read the manuals, etc, etc.

second.. you've built in a limit that says i can't have more than a certain number of references to samples stored on disk. that plainly sucks, and probably prohibits the making of songs with a wide range of instruments. can you lift this limit, please?

@samaaron
Copy link
Collaborator

@seductiveapps thanks for playing with Sonic Pi - we're glad you're enjoying it.

To answer your questions:

Our debian release was kindly contributed by @hzulla in his spare time. It is only thanks to the kind generosity of volunteers that we have a generic linux release at all. If you would like to work with the latest version then I'm afraid that the only option for you currently is to compile it yourself - or wait until someone kindly builds a release.

Secondly, the limit you're mentioning is a configuration option for SuperCollider (the audio synthesis server) and is required for boot. This limit is currently in the thousands, but you can easily hack the source if you want more - or you can wait until we have implemented a means for specifying your own SuperCollider boot flags.

Hope that this helps :-)

@seductiveapps
Copy link

Wish i had time to help out improve sonic-pi... but i gotta keep my code work focussed on my own stuff (https://github.com/seductiveapps/seductiveapps)

On the other hand, i dont mind learning a bit about C(++) Linux development.
Does anyone have a working tutorial to compile sonic-pi on Ubuntu 16.x?
@hzulla may i poke you to write such a tutorial if there isnt one atm..?

@seductiveapps
Copy link

does anyone using sonic-pi on Ubuntu 16 (Xenial) experience that after starting sonic-pi all other sound producing apps (music player, youtube) in Ubuntu no longer produce sound? needs a reboot to get going again..

fortunately i have 2 computers.. one computer to browse for samples and get inspiration from youtube, and another computer to edit my own songs in (if it pans out, i'll create a youtube channel after i have produced some songs)

@seductiveapps
Copy link

and lastly, for now, a small(?) feature request..

can the buffer buttons please be replaced with a tabpages subsystem like the browser has, and can that tabpage keep track of which file is opened (i'm looking for CTRL-S shortcuts to save an open file in sonic-pi, and it would be great if sonic-pi polls for file-changed notifications, so that i can use any other editor to edit song scripts in.. that would also decrease the amount of feature-requests ofcourse)

@seductiveapps
Copy link

eh, is there a multi-line comment feature? /* --- */ dont work :(

@llloret
Copy link
Collaborator

llloret commented Jan 12, 2017 via email

@nicoder
Copy link
Contributor

nicoder commented Jan 12, 2017 via email

@seductiveapps
Copy link

thanks. i'm new to python :)

@llloret
Copy link
Collaborator

llloret commented Jan 17, 2017 via email

@llloret
Copy link
Collaborator

llloret commented Jan 17, 2017 via email

@samaaron
Copy link
Collaborator

Nothing wrong with Python as a professional language. However, I personally think that for education Ruby has some nicer (more forgiving) aspects. It also has the do/end blocks which have been amazingly useful for creating a clean language interface in Sonic Pi :-)

@llloret
Copy link
Collaborator

llloret commented Jan 17, 2017 via email

@seductiveapps
Copy link

i'd like to file a bugreport. know of no other place to do that than here on this webpage..

#BEGIN description for bug__sonic_pi__SA__001
i store my saved music scripts in "/home/rene/data1/work/20170000 sonic-pi/"
that is an SSD drive.
in the current the v2.10 version of sonic-pi, the only version i could download, despite reading this #827 page pretty much in it's entirety, and following all the instructions on that webpage (i think)...
...i can't keep my music mix samples (*.mp3, *.wav, *.flac formats) in any other part of my Ubuntu 16.x (Xenial ubuntu.com) version's filesystem than that SSD drive.. so underneath[1], i have the subfolders album__001 and the folder album__001___samples.. i drag sample folders from larger collections of samples to be copied onto the SSD drive under[2], and the samples play back.. if i store them not on the SSD drive, then the samples wont play and neither will my hours worth of effort result in a song to be heard.

#END description for bug__sonic_pi__SA__001

@samaaron
Copy link
Collaborator

@seductiveapps - the typical route for creating a new bug report is to create a new issue by hitting the New Issue button at the top right of the issues page:

screen shot 2017-01-17 at 14 30 59

Unfortunately I don't fully understand your issue. It looks like you have your FLAC or WAV samples (MP3s are not supported) in a specific folder:

/home/rene/data1/work/20170000 sonic-pi/

Yet you don't seem to be able to play them? Is that correct?

Have you tried putting the following code into an empty buffer and hitting Run:

sample "/home/rene/data1/work/20170000 sonic-pi/"

What happens?

@samaaron
Copy link
Collaborator

@seductiveapps

For simplicity of use, Sonic Pi auto-loads samples from disk into just before it's needed. This obviously takes a different amount of time depending on your hd speed amongst other factors.

If your hard drive is too slow for this this behaviour, one solution is to pre-load all of your samples either at the start of the music or in a custom ~/.sonic-pi/init.rb file which is loaded on boot. To preload samples (individually or many at a time) see the load_sample and load_samples functions.

@samaaron
Copy link
Collaborator

Closing this now as the topic has migrated from the original issue. Please feel free to open up new issues as necessary.

@purrutia
Copy link

Hi thanks for this great software. I have sonic pi installed from the ppa (2.1.0) an i have a little issue. I have bluetooth speakers, and all works fine, with all my programs, except sonic pi. the audio from sonic pi still go out from my laptop speakers. Do you know how can i fix this?

Thanks!

@samaaron
Copy link
Collaborator

Sorry there currently isn't a more recent release for Debian post 2.10. If this is something you'd like to contribute that would be wonderful. Otherwise we unfortunately have to wait for someone to generously donate their time.

@freeeze
Copy link

freeeze commented Apr 21, 2017

Hi Sam ;)
Oh sorry I deleted the post because I saw it closed just after posting ;)
I can do it if someone would show me the way lol))
Any links to know how to do it?

@samaaron
Copy link
Collaborator

If I knew all the steps - I'd have done it myself. The last release was kindly donated by @hzulla - he may be able to help - otherwise I'm afraid it's left as a problem to be solved...

@freeeze
Copy link

freeeze commented Apr 21, 2017

Ok I will ping him ;)

@titimoby
Copy link

first, thanks for the work already done.
now that v3 is coming, is there someone able to handle this ppa?
or is their a way to pass it to another maintainer?

@samaaron
Copy link
Collaborator

We’re looking for a new maintainer for new Linux releases. @titimoby are you interested in helping out? :)

@titimoby
Copy link

As you saw in the forums, I'm currently looking at what needs to be done first on a single laptop.
Then I don't refuse to help, but I first need to understand what needs to be done to maintain a release.
If I accept, I prefer being able to accomplish what I say I will.

At least I say, let's discuss it ;)

@hzulla
Copy link
Collaborator Author

hzulla commented Oct 25, 2017

@titimoby I'll be glad to help, but would also want to try and get back into the saddle.

@cschol
Copy link
Contributor

cschol commented Oct 26, 2017

I started looking at the packaging also and am willing to help out. Should we start a new issue for discussion on what needs to be done for 3.0.1 packaging?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests