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, | + | 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 | + | 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 | + | 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.