Scratchbox repositories

m (add porting link)
Line 33: Line 33:
to /etc/apt/sources.list.d/debian-source.list
to /etc/apt/sources.list.d/debian-source.list
This allows '''apt-get source <package>''' to pull in source that should be reasonably compatible with Diablo.
This allows '''apt-get source <package>''' to pull in source that should be reasonably compatible with Diablo.
 +
See [[Packaging#Porting_an_existing_Debian_package|Porting Debian packages]] for more details.
== Chinook ==
== Chinook ==

Revision as of 23:09, 5 February 2010

Contents

Why?

Since distributions seem to use different formats for the "/etc/apt/sources.list" file, we decided to create this page for the benefit of developers who don't want to reinstall Scratchbox every few weeks... ;)

How?

In Scratchbox, do:

$ vi "/etc/apt/sources.list"
<put new entries>
$ apt-get update
$ apt-get dist-upgrade

Fremantle

deb http://repository.maemo.org/extras-devel fremantle free non-free
deb-src http://repository.maemo.org/extras-devel fremantle free

See also: Documentation/Maemo_5_Final_SDK_Installation

Diablo

deb http://repository.maemo.org/ diablo/sdk free non-free
deb-src http://repository.maemo.org/ diablo/sdk free
deb http://repository.maemo.org/ diablo/tools free non-free
deb-src http://repository.maemo.org/ diablo/tools free

Porting Debian Packages

If you are interested in porting applications from Debian then you may want to add:

deb-src http://www.mirrorservice.org/sites/ftp.debian.org/debian/ etch main contrib

to /etc/apt/sources.list.d/debian-source.list This allows apt-get source <package> to pull in source that should be reasonably compatible with Diablo. See Porting Debian packages for more details.

Chinook

deb http://repository.maemo.org/ chinook free non-free
deb-src http://repository.maemo.org/ chinook free

Warning

Note that for at least one user, the current chinook repository doesn't work anymore:

(Reading database ... 12047 files and directories currently installed.)
Preparing to replace passwd 1:4.0.3-31sarge5.osso7 (using .../passwd_1%3a4.0.3-31sarge5.osso7_i386.deb) ...
Unpacking replacement passwd ...
dpkg: error processing /var/cache/apt/archives/passwd_1%3a4.0.3-31sarge5.osso7_i386.deb (--unpack):
 trying to overwrite `/usr/sbin/add-shell', which is also in package debianutils
Errors were encountered while processing: /var/cache/apt/archives/passwd_1%3a4.0.3-31sarge5.osso7_i386.deb
E: Sub-process /scratchbox/devkits/debian-sarge/bin/dpkg returned an error code (1)

When that happens, you can't dist-upgrade either. So do this BEFORE editing "/etc/apt/sources.list" (or reedit it for "Chinook"):

$ apt-get install passwd
$ dpkg -i --force-all /var/cache/apt/archives/passwd_1%3a4.0.3-31sarge5.osso7_i386.deb
$ apt-get install --reinstall debianutils
$ dpkg -i --force-all /var/cache/apt/archives/debianutils<tab

Or if that doesn't work either, you can, AS A LAST RESORT, try editing "/etc/apt/sources.list" for "Diablo" (see above), and then:

$ apt-get install passwd

This will update "passwd" to Diablo's "passwd". If you expect anything to work after that, did I tell you already that this advice comes with no warranty? ;)

No really, in the worst case your Scratchbox will be broken after that and you'll have to reinstall Scratchbox.

If it actually did work, don't forget to dist-update as soon as possible afterwards so that the remainder of the system is updated too (and hopefully doesn't choke on the already-updated "passwd"):

$ apt-get dist-upgrade

In any case, should the following happen after you updated the distribution one way or another:

Preparing to replace passwd 1:4.0.3-31sarge5.osso7 (using .../passwd_1%3a4.0.3-31sarge5.osso8_i386.deb) ...
Unpacking replacement passwd ...
dpkg: error processing /var/cache/apt/archives/passwd_1%3a4.0.3-31sarge5.osso8_i386.deb (--unpack): trying to overwrite `/usr/sbin/remove-shell', which is also in package debianutils

Then do this:

$ fakeroot dpkg -i /var/cache/apt/archives/passwd_1%3a4.0.3-31sarge5.osso8_i386.deb 

So it finally shuts up and you have involuntarily updated to Diablo. ;-)