Editing Reprepro

Warning: You are not logged in. Your IP address will be recorded in this page's edit history.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 3: Line 3:
''' Preparation '''
''' Preparation '''
-
Before setting up the repositories, I read that it might be good idea to have a separate partitions for the repositories. From the reprepro man pages: "The most annoying problem not yet worked around is database corruption when the
+
Before setting up the repositories, it is a good idea to have a separate
 +
partition for the repositories. From the reprepro man pages: "The most
 +
annoying problem not yet worked around is database corruption when the
disk runs out of space. Ideally put the database on another partition to
disk runs out of space. Ideally put the database on another partition to
avoid that." So it seems clear that a large disk is necessary for the package
avoid that." So it seems clear that a large disk is necessary for the package
-
repositories.  
+
repositories. If one is going to create a replicated repository structure,
 +
one can use drbd since that is now included in the linux kernel as of 2.6.33.
reprepro has some dependencies, notably Berkeley DB, and it recommends
reprepro has some dependencies, notably Berkeley DB, and it recommends
gnupg-agent and inoticoming. Using inotify and inoticoming to check for
gnupg-agent and inoticoming. Using inotify and inoticoming to check for
incoming packages is also central to the repo system, it's worth noting that
incoming packages is also central to the repo system, it's worth noting that
-
inoticoming and reprepro are maintained and written by the same person.
+
inoticoming and reprepro are maintained and even written by the same person.
So, in short, I've installed these packages and their dependencies on the repository server: reprepro, libdb4.2, and inotincoming.
So, in short, I've installed these packages and their dependencies on the repository server: reprepro, libdb4.2, and inotincoming.
Line 20: Line 23:
''' Set up '''
''' Set up '''
-
The first step I took was to create directories for the binary deb packages:
+
The first step in creating a repo with reprepo is to create a directory under
 +
which the binary deb packages will be stored, along with the data for that set of packages.
     mkdir /srv/extras/
     mkdir /srv/extras/
Line 26: Line 30:
     mkdir /srv/extras-testing/
     mkdir /srv/extras-testing/
-
Here we're putting the directories under the /srv/ directory so that we can isolate them from the rest of our web content. I have installed nginx to serve the repos because it is small and fast.
+
In this case we have three directories under which we will have our 'distros'.
 +
These high-level directories are specific to Maemo, you can choose to create
 +
just one directory or change the names. Here we're putting the directories under
 +
the /srv/ directory so that we can isolate them from the rest of our content.
-- Note: If you try this at home, it's usually a good idea to only make one repository and the different projects just different distributions within that. (Unless you have a reason against that, of course).
-- Note: If you try this at home, it's usually a good idea to only make one repository and the different projects just different distributions within that. (Unless you have a reason against that, of course).

Learn more about Contributing to the wiki.


Please note that all contributions to maemo.org wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see maemo.org wiki:Copyrights for details). Do not submit copyrighted work without permission!


Cancel | Editing help (opens in new window)