/srv/irclogs.ubuntu.com/2012/12/09/#ubuntustudio-devel.txt

=== frewsxcv94709 is now known as frewsxcv94040
=== smartboyhw_ is now known as smartboyhw
len-dtsmartboyhw, You might notice that there are some "ubuntustudio" that are not included in an install.15:59
len-dtNormally we don't recommend adding all of them to another install, just the needed work flows.16:00
len-dtJust so you know Ubuntu or Xubuntu plus all the ubuntustudio metas does not = Ubuntustudio the way a fresh install would do.16:02
smartboyhwlen-dt, well then..... we never recommended installing it on a Mac anyway did we? Thx for the info though.16:06
len-dtsmartboyhw, Even then, I would start with the desktop of choice and add workflows.16:07
len-dtI don't know that there is a lowlatency kernel for the mac.16:08
persiaWhich mac?  Recent macs running Ubuntu use the same x86_64 lowlatency as any other recent intel chip.  Most of the same patches probably also apply for powerpc, but there may not be enough users to be worth the maintenance.  OS X kernels are just one flavour, which is reported to be sufficiently low latency when running Logic.16:10
len-dtpersia, Ya, I was just reviewing a converstion on #ubuntustudio16:11
persiaAh, no worries then :)16:11
len-dteven with a pc mapping all our metas over something else mostly doesn't do the same as an install16:12
persiaI think we ought consider that a bug, personally.  It used to work that way.16:12
len-dtI think zequence is working on that actually as part of the controls package.16:14
len-dtThere are some things though that with xfce panels and such where once the user has logged in, the way they are is set and changing the system default won't change them.16:15
len-dtEye candy stuff, backgrounds and themes mostly16:16
zequenceI think the mac version is not very different from the regular version. Mac has some HW oddities, but CPU is the same16:16
persiaThat probably needs lots of low-level work: I know that for the GNOME stuff, there was a lot of work done to cause the user session to be generated from a mix of system and user data.16:16
persiaHaving just gotten a new mac, I tell you that it's not any different, aside from the hardware selection.16:17
zequenceI've only tried using mac with linux. Puredyne ran pretty well on a macbook16:17
persiaThe reason for the different downloadable images is because Apple EFI and other folks UEFI are rather incredibly different.16:17
persiaSomeone might get around to writing code that works well by default on both and lets you boot a CD/DVD/USB, but perhaps not very soon.16:18
len-dtpersia, nice to know. So it is the grub part of things then so a kernel should work?16:18
persiaYeah, kernels are the same.  grub is even the same.16:18
persiaFor both mac and non-mac, one can run either grub-pc (BIOS) or grub-efi (EFI/UEFI): the issues all surround the grub-install script.16:19
zequenceI think the main practical difference in adding all our metas, compared to a fresh studio install, is that the user will not end up in audio group after adding metas, which should not happen anyway. And, many user settings are already done, especially if you use another UI, so the experience using the desktop is not going to be identical16:19
=== jta is now known as jta_afk
persiaNeeding to be in the audio group is a bug.16:20
persiaCertainly the desktop experience would be different, but we should be able to provide standards-compliant stuff to give a broadly similar experience.16:21
len-dtit keeps the server people happy...16:21
persiaMind you, environments like unity that fail to comply with XDG menu spec are probably harder to support.16:21
persiaHrm?  How?16:21
len-dtThere are some people who do not want the user to have rt access by default so if not audio group something else to do the same thing.16:22
persiaBut aren't we supposed to use rtkit for that?16:23
zequenceNot according to Paul Davis16:23
zequenceI'm happy with whatever works well, and is the easiest to implement16:24
zequenceFromt he user point of view, I mean16:24
zequenceOn Debian, the user is a member of audio group by default16:24
zequenceProbably not a good thing, but that is how it is16:24
zequencepulseaudio is also a member of audio group16:25
persiaUsed to be that way in Ubuntu as well.  Most of the things that required that stopped.16:25
zequenceI think different people are using the same group for different things16:25
len-dtI think slackware is set up that way too16:25
persiaThe last remaining item is limits.conf, which rtkit *should* solve.16:25
* len-dt remebers it used to be16:25
persiabut perhaps rtkit isn'T rich enough, or something.  I haven't been following the debate.16:25
zequencejackd now installs /etc/security/limits.d/audio.conf, which contains the two important lines16:26
zequenceSo, on Debian, that is enough to get realtime privilege. However, there's another problem too16:26
zequencefirewire devices cannot be accessed without being in audio group16:26
zequenceudev rules16:26
persiaThat's easy to fix.16:27
persiaI think pitti is part of udev upstream now, and I know he was one of the folk interested in dropping the audio group requirement.16:27
zequence/lib/udev/rules.d/60-ffado.rules16:28
len-dtit has to work with all the variants not just debian derivatives. As jack is developed for linux and the author is not likely to be happy doing it more than one way.16:29
persiaHeh, of course :)  No reason we can't ask for changes upstream.16:30
zequenceI don't know why one way is better than the other. I don't care. From our point of view, it's a matter of getting Debian/Ubuntu system infrastructure working to our benefit, no matter which solution, as long as it works16:31
len-dtI agree, the admin should be able to chose if the user has rt or not. so long as that happens, what does it matter?16:32
zequenceIt's too much for me personally to find out, and work on, so I'm not touching it, at least for now. But, it would be nice if a user could just install jackd, and get realtime privilege16:33
zequenceWithout further setting up16:33
len-dtyup16:34
persiaHrm.  The ffado udev rules specifying the audio group don't seem to have been uploaded with a bug reference.  I wonder why they are that way.16:34
len-dtThat doesn't work without jack anyway.16:35
zequencejack works without realtime privilege, but the firewire driver won't work without the user being a member of audio group16:36
persiazequence: Because of the udev rules, or also because of something else?16:36
zequencepersia: I guess the udev rules are what makes it possible for users to access the firewire devices, through the group membership. 16:39
zequenceSo, if one is member of audio group, that is enough to run jackd with firewire. To get realtime privilege, you add the two lines to /etc/security/*16:40
persiaAh, OK.  I'm guessing leftovers from the every-firewire-device-is-a-hard-drive-and-must-be-restricted-to-root-access philosophy then.16:40
persiaNow that we have juju, we can probably relax that (but I should go verify the state of juju in our kernels before I say that)16:40
persiaAh, found it: https://blueprints.launchpad.net/ubuntu/+spec/multimedia-platform-n-pro-audio-secured16:42
zequenceWe should probably talk with David about that then16:43
persiaYep :)16:44
persiaFrom the last note at the end, I get the impression that adding the memlock support is feasible (although I don't think it's done, based on my search results).16:45
persiaIf so, that drops the limits.d/audio.conf requirement.16:45
persiaIndeed, the audio group requirement for the firewire udev rules is about protecting raw1394 access to the underlying device (which could be used to compromise filesystems)16:47
len-dtIt looks to me like not much has moved. FW development in general seems to be quite slow. Reading about FW to ALSA it seems the idea is dead right now.16:51
persiaOK, 60-ffado.rules can be changed to not use the audio group: it ought use the ACL mechanism: see 70-acl.rules.16:53
persiaMind you, this would only let the currently-logged-in user access the firewire devices.  Does this seem like it might be an issue?16:53
len-dtWe set up pulse to be user centric so it should be ok.16:54
persiaCool.16:54
zequenceFor low latency audio, I don't see much point in multiuser access to the same device16:55
len-dtIt should be session centric. There are some problems for people who run audio from terminal... IE sight impared.16:55
len-dtSetting up a session than the same user can use from more than one VT at the saem time is "interesting"16:56
persiaheh. indeed :)16:56
len-dtThe answer that google shows ends up with a pile og dbus tasks running when really only two are needed (maybe one)16:57
zequenceOne audio server at a time though16:58
len-dtI did manage to get it to work with just the two though.16:58
persiaIf someone else wants to investigate ffado's need for the audio group before I get to it: apparently Fedora has it working without: presumably one could install in a VM and check the file layout.16:58
len-dtYup one audio server. but a lot of the jack CLI utils use dbus.16:58
persiaRight: finished confirming: we are entirely using the new firewire stack, so the permissions concerns with the old one are no longer relevant.17:01
zequencepersia: Are you talking about the change from the old stack to the new stack in the kernel, that happened around 2010?17:03
zequenceI think Ubuntu moved to the new stack with 10.1017:03
persiaUm, it's not done yet.17:03
persiait's still possible to generate raw1394 drivers (or was last I knew)17:03
zequenceI'm not that good with terms, but I think raw1394 is the old one, and firewire_something, is the new one17:04
persiaAnd the reports I see are that the v4l2 driver is still missing, as well as fixes to libavformat and pwlib (pwlib will likely never happen)17:04
persiaRight.  *1394 are the old interfaces, and firewire-* are the new ones.17:05
persia(well, sbp2 was also one of the old interfaces, but that's just a detail)17:05
zequencepersia: Yea, so from what I understand, we've been using the new stack since 10.10. The udev rules appeared at that time too17:05
persiaThat said, in Ubuntu, it appears our kernels don't build the old interfaces.17:05
persia(which means that we just handle video cameras badly)17:06
zequenceThe udev rules are what makes the current setup work, while for the old one, Ubuntu Studio used to grant access to all firewire devices through video17:06
zequencethrough the video group17:06
zequenceThere were no udev rules preinstalled in the past, as they are now, on all Debian systems (I think)17:07
persiaWell, a mix of the "audio" and "video" groups, but yeah.17:07
persiaNo, it was more hardcoded, and what wasn't often used hal.17:07
zequenceSo, I don't think Fedora is doing it differently. In fact, i think they are doing it the same way, but one would need to confirm that17:09
persiaAccording to the upstream firewire wiki, Fedora is using ACLs for some firewire device types, but I think that's just using 70-acl.rules, from what I see.17:10
persiaBut I'd need to test to find out what is different, and whether the GROUP= entry could be dropped from 60-ffado.rules with that before being confident.17:10
zequenceAh, this line: SUBSYSTEM=="firewire", ENV{ID_FFADO}=="1", TAG+="udev-acl"17:12
zequenceAnd there are a few others, concerning firewire17:12
persiaRight.  I believe that is supposed to interact with session management and grant the currently active user access to the device.17:14
persiaWhat I don't know is whether we have polkit configured in such a way that it just works.17:15
persiaIndeed, we do *not* have the necessary polkit rules to automagically do the right thing.17:19
persiaSo, two bugs:17:19
persia1) rtkit needs to grow memlock support17:20
persia2) we need polkit rules to grant access to ffado devices17:20
persiaUnless someone knows another reason we need an "audio" group?17:20
zequenceAnd rtprio?17:23
zequenceOr, does rtkit handle that differently?17:23
=== jta_afk is now known as jta
persiaSeems it's configued in rtkit: http://git.0pointer.de/?p=rtkit.git;a=blob;f=README17:26
zequenceever felt like if you didn't have so many problems to solve, you'd have more time to solve problems?18:03
astraljavazequence: I can't hear you over the problems I'm trying to solve.18:12
zequenceastraljava: I'm sorry. Busy strangling my mouse. Get back to you when I have audio18:16
zequenceIt's great when you google for help and find a very helpful wiki page you forgot you wrote only a week ago21:25
Len-nb:)21:45
=== jta is now known as jta_afk
zequenceInteresting, though 4 years old talk about linux kernel development. Some facts about speed of changes, and who contributes https://www.youtube.com/watch?feature=player_detailpage&v=L2SED6sewRw#t=51s22:12
zequenceI wasn't aware of the fact that amateurs, at least then, where the biggest group of contributors, if you didn't count companies as one single group, but separate per company22:15
zequenceAnd, also back then, Canonical were not contributing much at all22:16
zequenceI think probably it might be worthwhile looking at maintaining a linux-rt 22:20
zequenceOr.. I don't know. I need to think more about that22:21
len-dtzequence, it may be more worthwhile figuring out why new kernels have poor low latency performance.22:32
len-dtMaybe there are new additions/settings that could be changed/bypassed in the low latency/rt kernel22:32
zequencelen-dt: I was looking at the kernel versioning, and realized the odd versions are not maintained for any long periods of time. They reach EOL pretty quickly. Yet, Ubuntu always uses whatever kernel is the latest22:36
zequencethe rt patch is added to all the even numbers22:36
zequenceThose which are maintained for a longer time22:36
zequenceSomehow, I would have thought it would make sense for Ubuntu to only use the even numbers, and that would also have made it practical when maintaining a -rt kernel22:37
zequenceOf course, one could always keep one, which was not the same version as the stock kernel22:37
zequenceSo, if Ubuntu would go with say, 3.5, the -rt kernel could be 2.422:37
zequence3.4*22:37
zequenceI haven't yet tried patching the Ubuntu kernel with the rt patch. I actually only built an rt for the first time today22:38
zequenceAs the -rt patch is meant for the vanilla kernel, there could be problems22:39
len-dtzequence, I think there is good reason for using only even numbered kernels22:39
len-dtWould it be possible to set US to look at only even numbers in case generic was installed too?22:40
len-dtWhat versions does -server use?22:40
* len-dt thinks he would prefer even kernels in a server for sure22:42
zequencelen-dt: There's no server flavor anymore22:42
len-dtI thought ubuntu was trying to have a server market... something that pays.22:43
zequence..wait22:43
zequenceI must have misunderstood something22:44
zequenceIt's the same versioning anyway22:44
len-dtEven in LTS?22:45
zequenceNo server flavor since 12.0422:45
len-dtOr are the LTS ones always even?22:45
zequencehttps://wiki.ubuntu.com/Kernel/Dev/Flavours22:45
zequencelucid had a preempt flavor. Didn't know that. Only mad6422:48
zequenceamd64*22:48
len-dtwhat has happened with the LMMS thing? (swept under the carpet?)22:49
zequencelen-dt: Perhaps just that no one has taken a decision for adding it22:50
len-dtBut no talk either22:50
len-dtI could add it to the seeds and see what happens...22:50
zequenceI think we covered just about everything on the mail list22:50
zequenceI'm for adding it22:51
len-dtIf I add it to the seeds now it should show tomorrow either in or broken build.22:51
* len-dt is willing to take the blame22:51
len-dtI'll comment the commit as "trial only"22:52
zequenceNah, just add it22:52
len-dtwill do.22:53
zequenceI think it fills a workflow that other applications don't really do22:53
zequenceIt's not like there are 5 other apps like LMMS out there22:53
zequenceAnd to those who say it's buggy. Well, so are most of the other apps as well22:54
Len-nbgmorgan tries to do much the same.22:55
zequenceIf we all had magic wands, maybe we could solve those problems pretty quick22:55
Len-nbor got paid... just for this22:55
zequencegmorgan was new to me, but that looks more like a tracker than a sequencer22:56
zequenceAh, musical patterns22:57
* Len-nb is going to eat22:57
zequenceNever seen an interface like that one before22:58
zequencethe mail accounts request seems to have been accepted23:23
zequenceI must be doing something wrong. I can't get an rt kernel built with decent performance23:47
zequenceThere's a new config for the rt patch though, called CONFIG_PREEMPT_LAZY23:48
zequenceBut, disabling it doesn't help much23:51
zequenceI'm getting worse performance than from -lowlatency23:52

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!