[Pkg-ltsp-devel] Bug#741143: ltsp: please consider supporting raspbian and/or supporting unknown derivatives

peter green peter.green at postgrad.manchester.ac.uk
Sun Mar 9 02:12:34 UTC 2014


Package: ltsp
Severity: wishlist

Since we started using our own vendor identifications on raspbian (as we 
were encouraged to do by various parties in debian) ltsp started failing 
to build for us 
http://buildd.raspbian.org/status/fetch.php?pkg=ltsp&arch=armhf&ver=5.4.2-6%2Bb2&stamp=1382790352 
. This appeared to be the result of the debian ltsp packages using the 
vendor name to locate certain files and failling on unknown vendors. We 
made a quick hack to work arround this 
http://debdiffs.raspbian.org/main/l/ltsp/ltsp_5.4.2-6%2brpi1.debdiff 
(which we have since pulled forward to each new ltsp version that hit 
jessie)

If all that is required is to distinguish between debian and ubuntu then 
I reccomend using "dpkg-vendor --derives-from ubuntu" to distinguish 
them (dpkg-vendor --derives-from debian can't be used to distinguish 
because ubuntu is a derivative of debian). If it's really critical to 
have different settings for every derivative then I guess you have 
little choice but to list them all. If it would be nice but not critical 
to have settings (e.g. mirror locations for each derivative) and more 
important to distiguish ubuntu-based from non ubuntu based then a hybrid 
approach may be possible to use distro specific settings first, then 
using "--derives-from ubuntu" as a fallback to detect ubuntu derivatives 
and finally fall back to treating the system as debian. I'm not a ltsp 
expert myself so I leave the details of which approach is best in this 
case to those who are.

I just had a chat with vagrantc about this on irc (freenode #raspbian) 
and the discussion is preserved below.

<plugwash> You maintain ltsp in debian right?
<vagrantc> yup
<vagrantc> in fact, that's what got me interested in the rpi ... looking 
at it's use as a thin client
<plugwash> I know some people have been doing stuff with ltsp and the Pi 
but i've no idea on the details. I've patched the ltsp in raspbian 
jessie to make it build but I've no idea if that is enough to actually 
make it usable
<vagrantc> oh, it failed to build?
<plugwash> and if it's appropriate to push anything upstream into debian
<vagrantc> if it's not too crazy complicated, i'd be happy to take patches
<plugwash> It started failling to build after we started using our own 
vendor name
* ColdKeyboard has quit ()
<plugwash> 
http://buildd.raspbian.org/status/fetch.php?pkg=ltsp&arch=armhf&ver=5.4.2-6%2Bb2&stamp=1382790352
<vagrantc> i recently switched the packaging to dpkg-vendor, it used to 
use lsb-release...
<vagrantc> probably not able to take patches for wheezy at this point, 
though
<plugwash> How exactly do you use dpkg-vendor?
<vagrantc> ah, got it.
<vagrantc> i see why it's failing.
<plugwash> Anyway I added a quick hack 
http://debdiffs.raspbian.org/main/l/ltsp/ltsp_5.5.0-1%2brpi1.debdiff but 
i've no idea what the best way to fix it is, nor if raspbian is likely 
to need different settings from debian to make ltsp actually usable
<vagrantc> the ltsp packages have some differences between ubuntu and 
debian, so we use dpkg-vendor/lsb_release to check
* dougl has quit (Remote host closed the connection)
<vagrantc> i haven't actually used raspbian as an LTSP server, though, 
i've only tested the client environment
<plugwash> In general to distinguish between debian and ubuntu it's best 
to use "dpkg-vendor --derives-from ubuntu"
<plugwash> That way downstreams of both will get appropriate treatment
<vagrantc> plugwash: my hunch is that raspbian can be treated 
identically to Debian for all the ltsp packaging
* vagrantc wonders ho wmany people are using raspbian as an LTSP server...
<vagrantc> at runtime, most stuff uses lsb_release, i'm guessing that's 
different too?
<plugwash> Yes it is
<plugwash> in general I would advise against using lsb_release because 
it lacks any understanding of the idea of derivative distributions
<vagrantc> that's used extensively upstream
<vagrantc> there isn't any distro-agnostic tool that does any better 
that i'm aware of
<plugwash> Well there is /etc/os-release though you have to parse it 
yourself
<plugwash> and it's relatively new
<plugwash> The problem is lsb_release has no concept of derivatives, so 
rather than saying "do x on debian like distros and y on redhat like 
distros" you have to say "do x on debian, ubuntu, mint ............ y on 
fedora, rhel, suse, mandrake..............."
<plugwash> Which means smaller distros get screwed because upstreams 
neglect to include them
<vagrantc> as far as the packaging is concerned...
<vagrantc> for ltsp
* DrShoggoth (~prakwtf at 12.116.104.118) has joined #raspbian
<vagrantc> i just need additional checks for dpkg --derives-from debian 
&& VENDOR=Debian
<vagrantc> and dpkg --derives-from Ubuntu && VENDOR=Ubuntu ?
* DrShoggoth has quit (Client Quit)
<vagrantc> and then... probably need a symlink in 
/usr/share/ltsp/plugins/ltsp-build-client/Raspbian -> Debian
<vagrantc> although the mirror settings will be different. hrm.
<plugwash> In general don't use "--derives-from debian"
<vagrantc> ?
<plugwash> because pretty much every dpkg using distro will return true 
for that
<vagrantc> well, if VENDOR != Debian or Ubuntu ...
<plugwash> Remember ubuntu derives from debian
<plugwash> so in general you would check if derived from ubuntu, if so 
do ubuntu stuff, if not do debian stuff
<vagrantc> the --dervices-from checks would only be fallbacks if it's an 
"unknown" VENDOR
<plugwash> If you really insist on doing a --derives-from debian test 
you would need to do it AFTER the --derives-from ubuntu test
<vagrantc> right
<vagrantc> plugwash: would you file a wishlist bug on ltsp about this?
* themill sets ban on 
*!*@CPEc8d3a35a59fe-CM000f9fa607d2.cpe.net.cable.rogers.com
<themill> (that's the well known drive-by spammer)
<plugwash> (but in general I see doing a --derives-from debian test as 
pointless, you may as well just put the "debian" choice as the final 
fallback IMO)
<vagrantc> plugwash: yeah, that makes sense.



More information about the Pkg-ltsp-devel mailing list