RPM & DEB repositories

Return to Panda Features in Development

RPM & DEB repositories

Postby rdb » Sun Apr 12, 2009 5:14 am

Hi all,

I've been working to get Panda running on the OpenSUSE Build Service.
It works like this: I upload a source package and a .spec and .dsc file, and it will automatically compile it for me on tons of different linux distro's and architectures, and it will set up repositories with .debs and .rpms.
Extremely useful, some benefits are:
(1) Saves me a lot of effort. I can also track the status and see build logs as the build progresses.
(2) It finishes the builds within 45 minutes. This makes releasing a Panda version quick and painless - I don't have to spend days in virtual machines. This will allow me to release more often & earlier. (A pity this doesn't work with Mac & Windows.)
(3) Users won't have to download every new Panda release from the download page - they can just add the repositories and their distro will automatically notify them about updates - and install panda for em.
(4) This makes Panda available for much more different distros. I can add any distro or architecture I want by just hitting a checkbox somewhere.
(5) Its easy for me to customize the build process and test how it works on different distro's instantly. Also, when we want to have runtime distributables later, it's just a matter of uploading a second .spec file.

Currently, the repositories are here:
http://archive.panda3d.org/
http://archive.panda3d.org/rpms/
Not seeing your distro/arch in the list? Just ask me - I can add it easily, and max. 45 minutes later it will be built.
The current Panda version in the repo's is 1.6.0 with some modifications to make it compile.
For RPM, there is a panda3d package, panda3d-devel, panda3d-debug and source RPM. If you're a Python user, you'll just need the "panda3d" package - C++ users probably also want the -devel and -debug packages.
The DEB packages aren't split up yet - it's just one big package like on the download page. Maybe for later.

Debian/ubuntu users
Add this to your /etc/apt/sources.list, or do the equivalent in the graphical tool for your distro:
Code: Select all
deb http://archive.panda3d.org lenny main

That's for debian. I can't get panda to compile on etch yet, sorry - lenny only for now. For ubuntu:
Code: Select all
deb http://archive.panda3d.org jaunty main

Replace "jaunty" with the codename of your ubuntu version.
If you've edited sources.list by hand, you'll need to execute this command as root:
Code: Select all
sudo apt-get update

Then, it should be installable.

RPM-based distro users
You'll need to get rpm to accept the OpenSUSE Build Service's GPG key first. Use this as root:
Code: Select all
rpm --import http://download.opensuse.org/openSUSE-Build-Service.asc


YaST
If you're a YaST user, go to the Installation Source module. Select Add -> By URL, and enter:
Code: Select all
http://download.opensuse.org/repositories/home://pro-rsoft://Panda3D/openSUSE_11.1/

Replace "openSUSE_11.1" with the correct dirname - use the url above to find out which one for your distro.

yum
I think you just need to copy the .repo file which you can find after navigating into the repo for your distro here, download that .repo file and put it in the "/etc/yum.repos.d/" directory.

For more info on how to add the repo's, click here.
Last edited by rdb on Wed Aug 12, 2009 1:07 am, edited 2 times in total.
I rarely respond to PMs
rdb
 
Posts: 8565
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Postby rdb » Sun Apr 12, 2009 5:40 am

Oh. There's a problem with this approach - since openSUSE also publishes the source packages, I can't ship the maya SDK's with the source, meaning: the RPM's and DEB's don't have Maya support.
Maybe I could release besides those a distro-independent panda3d-maya package. Is there anyone here who knows how to compile and link those in such a way it will work across distros?
I rarely respond to PMs
rdb
 
Posts: 8565
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Postby Hypnos » Sun Apr 12, 2009 8:51 am

some suggestions:
- include the latest ubuntu releases automatically if already possible (specifically i mean the latest testing/unstable versions)
- create addon packages, for example the maya plugins, maybe also physx. maybe move fmod there as well. possibly this could lead to a panda3d-addons site where c++ addons/plugins/modules to panda3d could be released.
- as it already has been suggested somewhere, create -dev and "normal" packages.
Hypnos
 
Posts: 585
Joined: Sat Sep 11, 2004 8:07 am
Location: Zürich, Switzerland

Postby rdb » Sun Apr 12, 2009 9:05 am

Hypnos wrote:- include the latest ubuntu releases automatically if already possible (specifically i mean the latest testing/unstable versions)

Hmm, what exactly do you mean? If you add this repo, you can see 1.6.0 is already there.
Or, do you mean that I regularly upload a CVS snapshot of the source, and make a second "unstable" repo?
Or do you mean I should include Ubuntu Jaunty?

Hypnos wrote:- create addon packages, for example the maya plugins, maybe also physx. maybe move fmod there as well. possibly this could lead to a panda3d-addons site where c++ addons/plugins/modules to panda3d could be released.

That was 100% what I was thinking. I'm planning to have panda3d-maya, panda3d-fmod and panda3d-physx packages in the end (I hate that fmod is the default, and even that the default build is nonfree - it should be free.)
However, no matter how hard I tried, I could not find a way around the PhysX SDK license - they don't allow redistribution. Meaning, I can't do that through the BuildService - it publishes source packages exactly as I uploaded them. Same story for Maya.
It would be great if I could publish just one or two distro-independent maya and physx packages. Anyone knows of a way to compile+link those in a way that they will work on any distro?

Hypnos wrote:- as it already has been suggested somewhere, create -dev and "normal" packages.

As stated in my post above, there are already -devel, -debug and normal packages in the .rpm repositories, but I'm still working on that for debian repo's.
I rarely respond to PMs
rdb
 
Posts: 8565
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Postby drwr » Sun Apr 12, 2009 10:51 am

Wow, this is really great news! Hooray for OpenSUSE for finding a solution to the problem of building on so many distros, and great job pro-rsoft for knowing about it and integrating with it!

I don't have any brilliant ideas about dealing with the non-free parts, though. It is a conundrum.

David
drwr
 
Posts: 11253
Joined: Fri Feb 13, 2004 12:42 pm
Location: Glendale, CA

Postby croxis » Mon Apr 13, 2009 10:04 am

I think he means Jaunty, which I would also appreciate as well.
David - Proud to be saving the world sense 1984
croxis
 
Posts: 408
Joined: Thu Feb 12, 2009 4:13 pm
Location: Portland, OR

Postby bigfoot29 » Sun Apr 19, 2009 11:23 am

Once someone manages to get the non-free parts as sort of "extra package", we can host it at Panda3DProjects.

Having a Repo up and running is not the problem. New Ubuntu Release (Jaunty) might be an idea, but not before the release is finally there.
Having to compile for testing and SID means to have a regular updated system and releasing that nearly all day because there MIGHT have been changes to the OS given. -> Not a good idea if you ask me because its a ton of work that is not worth the efforts.

Regards, Bigfoot29
User avatar
bigfoot29
 
Posts: 617
Joined: Thu Jun 30, 2005 4:22 am
Location: Germany

Postby rdb » Sun Apr 19, 2009 11:36 am

New distro releases are automatically added, I believe - since Jaunty is not yet released, it's not yet there. I'll add it as soon as it appears.

Eventually, my goal is to have these repositories hosted at panda3d.org itself. I've already tried using apache rewrite rules but apt cannot handle 30X redirects. :x

It might not be a bad idea to have something like this at panda3dprojects for people who want to distribute their non-free addon, indeed.
I rarely respond to PMs
rdb
 
Posts: 8565
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Postby bigfoot29 » Sun Apr 19, 2009 11:42 am

Prorsoft: there is no need for a redirect. At least for the domain name we can redirect it with p3dp completely using DNS functionality. This should be able with p3d.org aswell, but I guess, we don't have access to their name server :D

http://lenny.debian.p3dp.org/ could redirect to http://download.opensuse.org/repositories/home://pro-rsoft://Panda3D/Debian_5.0 for example...

Or anything we want to use at P3D later on.

Regards, Bigfoot29
User avatar
bigfoot29
 
Posts: 617
Joined: Thu Jun 30, 2005 4:22 am
Location: Germany

Postby rdb » Sun Apr 19, 2009 12:05 pm

Well, that would be sweet. Can we set up redirects for individual subdirectories?
E.g. archive.panda3d.org/dists/lenny to http://download.opensuse.org/repositori ... ebian_5.0/ or something like that?
I rarely respond to PMs
rdb
 
Posts: 8565
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Postby bigfoot29 » Sun Apr 19, 2009 2:17 pm

Nope. "Only" the said way using complete domain names:



Regards, Bigfoot29
User avatar
bigfoot29
 
Posts: 617
Joined: Thu Jun 30, 2005 4:22 am
Location: Germany

Postby rdb » Tue Apr 21, 2009 5:14 am

Okay. Would it redirect subdirectories fine?
E.g. would debian.p3dp.com/lenny still redirect correctly?
If so, could you perhaps set up a testcase at p3dp, something like:
debian.p3dp.org redirect to http://download.opensuse.org/repositori ... //Panda3D/ ?
I rarely respond to PMs
rdb
 
Posts: 8565
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Postby rdb » Sun Apr 26, 2009 4:33 am

Addendum: bug with 64-bits repositories is fixed, and the Jaunty repo is up and running as well.
Haven't tested it on Jaunty yet (the bugs with python2.6 should be fixed) but I'm upgrading right now to test it.
(EDIT: Yeah, the jaunty build works fine now.)

PS. Panda3D 1.6.1 is already in the repos.
Last edited by rdb on Sun Apr 26, 2009 5:17 am, edited 1 time in total.
I rarely respond to PMs
rdb
 
Posts: 8565
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Postby astelix » Sun Apr 26, 2009 4:49 am

this is really a sensational tool I haven't heard so far- thankyou a lot for hinted out pro-rsoft
My Rig:
P3D 1.7.0@WinXP & Kubuntu 10.04- Athlon 64 5200 X2 ~ Radeon 3200HD (integrated)
User avatar
astelix
 
Posts: 866
Joined: Mon Mar 27, 2006 4:36 pm
Location: Milano, ITA

Postby croxis » Sun Apr 26, 2009 9:36 am

Success on Jaunty from here!
David - Proud to be saving the world sense 1984
croxis
 
Posts: 408
Joined: Thu Feb 12, 2009 4:13 pm
Location: Portland, OR

Postby rdb » Thu May 21, 2009 9:32 am

The debian/ubuntu repositories are now hosted here at panda3d.org.
You can now put this in /etc/apt/sources.list: (of course replace "jaunty" with your distro)
Code: Select all
deb http://archive.panda3d.org jaunty main

Then, you'll be able to install the "panda3d" package through your favorite package manager.

The advantage of having debs hosted here is that old releases will be stored too (you'll be able to revert to an older version through your package manager).

I'll find a way to link to the RPM repositories from panda3d.org, too.
I rarely respond to PMs
rdb
 
Posts: 8565
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Postby astelix » Thu May 21, 2009 10:11 am

so 8)

PS: is it all already up? i tried hardy and jaunty with no luck
this is what I got for hardy

and jaunty gotta similar behavior

*EDIT* check: the .gz extension is missed on the server
My Rig:
P3D 1.7.0@WinXP & Kubuntu 10.04- Athlon 64 5200 X2 ~ Radeon 3200HD (integrated)
User avatar
astelix
 
Posts: 866
Joined: Mon Mar 27, 2006 4:36 pm
Location: Milano, ITA

Postby rdb » Thu May 21, 2009 10:32 am

Weird, it worked for me. Apparently your distro looks for a compressed Packages file.
Anyways, I've modified the scripts to also post a gzipped version and rebuilt the repositories. Let me know if it works, or rather, doesn't work.
I rarely respond to PMs
rdb
 
Posts: 8565
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Postby astelix » Thu May 21, 2009 10:42 am

you betcha:

Image

:wink:

great job pro_r!
My Rig:
P3D 1.7.0@WinXP & Kubuntu 10.04- Athlon 64 5200 X2 ~ Radeon 3200HD (integrated)
User avatar
astelix
 
Posts: 866
Joined: Mon Mar 27, 2006 4:36 pm
Location: Milano, ITA

Postby benchang » Sat May 23, 2009 10:07 pm

Just for kicks, I emailed support at the Autodesk Developer Network about including the sdk on the build service. Amazingly, they actually wrote back within 24 hours, although just to fwd the request to someone else :) we'll see.

for the maya tools: I can make installer packages, at least for ubuntu. I don't know a distro-independent way of doing an installer other than a tarball and an install script. That might be fine, though, since it's only a few files anyway, right?
User avatar
benchang
 
Posts: 195
Joined: Wed May 30, 2007 3:16 pm
Location: Troy, NY

Postby rdb » Sun May 24, 2009 12:56 am

I doubt they will allow it, since then their SDK will be available to the public. Also it will need to be under a license that allows redistribution, otherwise I can't get it into the build service (they refused the PhysX SDK, too).
But if they do, that would be cool.

Yeah, the maya exporter only consists of a few files. But I'll have to be careful when compiling & linking so I don't do something that breaks on other distros.
I rarely respond to PMs
rdb
 
Posts: 8565
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Postby rdb » Tue Aug 11, 2009 1:53 pm

I had to remove Panda3D from the OBS as they do not allow applications using ffmpeg. I'm actively looking for a replacement, at the moment.
I rarely respond to PMs
rdb
 
Posts: 8565
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Thanks!

Postby Kludge » Sat Nov 28, 2009 4:25 pm

This is definitely the way to distribute software for distributions.
A link to these directions should go on the main "Download" page: (http://www.panda3d.org/download.php).

That said, I put in the Fedora 11 repository, but there are no packages. Is this right?
# yum -v repolist
...
Repo-id : home_pro-rsoft_Panda3D
Repo-name : The Panda3D free 3D engine (fedora11)
Repo-status : enabled:
Repo-updated : Mon Aug 10 08:16:53 2009
Repo-pkgs : 0
Repo-size : 0
Repo-baseurl : http://download.opensuse.org/repositori ... /fedora11/
Repo-expire : 21,600 second(s) (last: Sat Nov 28 13:57:34 2009)
...
Kludge
 
Posts: 2
Joined: Sat Nov 28, 2009 4:07 pm

Postby rdb » Sun Nov 29, 2009 6:08 am

I had to remove Panda3D from the OBS as they do not allow applications using ffmpeg.

I've found RPM Fusion where I could perhaps host Panda3D for Fedora, but I'll probably need to spend a week or two packaging Panda and it's dependencies for Fedora.
I rarely respond to PMs
rdb
 
Posts: 8565
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Spec file

Postby Kludge » Sun Dec 06, 2009 5:40 pm

Thank you for your efforts. Dealing with separate repositories will obviously be more difficult.

I came across this thread originally looking for a .spec file that I could use with the tar ball to generate an rpm. I assume that one must exist. Would you happen to have a spec file that I could use? Could it be included with every panda tar ball?

-Frank
Kludge
 
Posts: 2
Joined: Sat Nov 28, 2009 4:07 pm

Postby rdb » Mon Dec 07, 2009 3:23 am

Here is the spec-file that I have used for the OBS, for 1.6.2:
http://152.10.254.215/~pro-rsoft/panda3d.spec

If you invoke makepanda with the --installer option, it will automatically create a specfile too, and generate an rpm with that.
I rarely respond to PMs
rdb
 
Posts: 8565
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Postby LinuxDonald » Sun Dec 20, 2009 10:04 am

@rdb will you build panda3d for rpmfusion?
When not i cann do this.
User avatar
LinuxDonald
 
Posts: 24
Joined: Sun Oct 11, 2009 1:05 pm
Location: Germany

Postby rdb » Sun Dec 20, 2009 10:07 am

I'll try, for the upcoming 1.7.0 version.
I rarely respond to PMs
rdb
 
Posts: 8565
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Postby astelix » Tue Jun 29, 2010 3:06 am

just to be sure, have you stopped to maintain the ubuntu repository dists rdb? I see no dist folder for lucid...
My Rig:
P3D 1.7.0@WinXP & Kubuntu 10.04- Athlon 64 5200 X2 ~ Radeon 3200HD (integrated)
User avatar
astelix
 
Posts: 866
Joined: Mon Mar 27, 2006 4:36 pm
Location: Milano, ITA

Postby rdb » Tue Jun 29, 2010 5:44 am

They are in the PPA on launchpad now.
https://launchpad.net/~panda3d/+archive/ppa
rdb
 
Posts: 8565
Joined: Mon Dec 04, 2006 5:58 am
Location: Netherlands

Next

Return to Panda Features in Development

Who is online

Users browsing this forum: No registered users and 0 guests