A feature request i heard of when i was still a dev was that XBian should be able to have multiple repositories for each released version, and a development repository. This way, old versions can still be maintained without getting in conflict with newer packages. I'm currently successfully experimenting with such a setup for pilight.
I updated the apt repo creator to allow for this functionality.
What you need to do is the following.
1) Create a folder for each repo version you want to create. In this case they are called
devel and
stable.
Terminal
drwxrwxr-x 0 root root 0 nov 2 23:03 debs
drwxrwxr-x 0 root root 0 nov 2 23:41 devel
drwxrwxr-x 0 root root 0 nov 2 23:35 dists
drwxrwxr-x 0 root root 0 nov 2 23:41 .gnupg
-rwxrwxr-x 1 root root 15 nov 1 23:54 password
drwxrwxr-x 0 root root 0 nov 2 23:35 stable
2) Add the debs you want to add in this specific repo version and with the update.sh
Terminal
totaal 2048
-rwxrwxr-x 1 root root 198526 nov 2 23:23 pilight1.0.deb
-rwxrwxr-x 1 root root 7404 nov 2 23:42 update.sh
3) Edit the
update.sh file and especially the
APTNAME and
APTDESC variable:
Terminal
NAME="pilight";
LABEL="pilight repository";
APTNAME="devel";
APTDESC="pilight development apt repository";
PASSFILE="../password";
PREFIX="../";
GNULOC="../.gnupg";
4) Run the
update.sh in each folder.
5) In my case, a
devel and a
stable repository are created:
Terminal
dists/:
totaal 0
drwxrwxr-x 0 root root 0 nov 2 23:41 devel
drwxrwxr-x 0 root root 0 nov 2 23:35 stable
dists/devel:
totaal 3072
-rwxrwxr-x 1 root root 1440 nov 2 23:41 InRelease
drwxrwxr-x 0 root root 0 nov 2 23:35 main
-rwxrwxr-x 1 root root 903 nov 2 23:41 Release
-rwxrwxr-x 1 root root 490 nov 2 23:41 Release.gpg
dists/devel/main:
totaal 0
drwxrwxr-x 0 root root 0 nov 2 23:41 binary-armhf
dists/devel/main/binary-armhf:
totaal 3072
-rwxrwxr-x 1 root root 0 nov 2 23:41 Packages
-rwxrwxr-x 1 root root 29 nov 2 23:41 Packages.gz
-r-xr-xr-x 1 root root 126 nov 2 23:41 Release
dists/stable:
totaal 3072
-rwxrwxr-x 1 root root 1436 nov 2 23:35 InRelease
drwxrwxr-x 0 root root 0 nov 2 23:34 main
-rwxrwxr-x 1 root root 899 nov 2 23:35 Release
-rwxrwxr-x 1 root root 490 nov 2 23:35 Release.gpg
dists/stable/main:
totaal 0
drwxrwxr-x 0 root root 0 nov 2 23:35 binary-armhf
dists/stable/main/binary-armhf:
totaal 3072
-rwxrwxr-x 1 root root 0 nov 2 23:35 Packages
-rwxrwxr-x 1 root root 29 nov 2 23:34 Packages.gz
-r-xr-xr-x 1 root root 121 nov 2 23:35 Release
6) Also each repository will have his own pool subfolder so packages don't overwrite each other:
Terminal
pool/:
totaal 0
drwxrwxr-x 0 root root 0 nov 2 23:57 devel
drwxrwxr-x 0 root root 0 nov 2 23:57 stable
pool/devel:
totaal 0
drwxrwxr-x 0 root root 0 nov 2 23:57 main
pool/devel/main:
totaal 0
drwxrwxr-x 0 root root 0 nov 2 23:57 p
pool/devel/main/p:
totaal 0
drwxrwxr-x 0 root root 0 nov 2 23:57 pilight
pool/devel/main/p/pilight:
totaal 1024
-rwxrwxr-x 1 root root 199380 nov 2 23:57 pilight_1.1-1_armhf.deb
pool/stable:
totaal 0
drwxrwxr-x 0 root root 0 nov 2 23:57 main
pool/stable/main:
totaal 0
drwxrwxr-x 0 root root 0 nov 2 23:57 p
pool/stable/main/p:
totaal 0
drwxrwxr-x 0 root root 0 nov 2 23:57 pilight
pool/stable/main/p/pilight:
totaal 1024
-rwxrwxr-x 1 root root 198526 nov 2 23:57 pilight_1.0_armhf.deb
7) If users want to use one of the repositories they can simply use:
Code:
deb http://apt.xbian.org/ stable main
or
Code:
deb http://apt.xbian.org/ devel main
Or both.
However, it would be great if we can have these so users can choose any of them:
Code:
deb http://apt.xbian.org/ beta1 main
deb http://apt.xbian.org/ beta1.1 main
deb http://apt.xbian.org/ beta2 main
In the current situation, you can change:
Code:
deb http://xbian.brantje.com/ wheezy main
to
Code:
deb http://xbian.brantje.com/ beta1.1 main
and
Code:
deb http://xbian.brantje.com/devel wheezy main
to
Code:
deb http://xbian.brantje.com/ devel main
By using this method, the old repository can always exists next to newer versions which will result in more happy users