Skip to content
Browse files

Finalize rename to mrepo

  • Loading branch information...
1 parent 9e28bb9 commit 61777b3392dc7bb171f58887347d913b0fc432b9 @dagwieers committed Dec 4, 2006
View
2 ChangeLog
@@ -1,5 +1,5 @@
* 0.8.3svn - ... - released 22/10/2006
-- Renamed Yam to Depo (Matthew Hannigan)
+- Renamed Yam to mrepo (Matthew Hannigan)
- Fix a bug in the relpath() function when common part is not a path (Jason Kim)
- Do not copy the comps.xml from the ISO when the target os-comps.xml exists (Jason Kim)
- Fixed a problem when locking during a dry-run (David Lutterkort)
View
28 Makefile
@@ -1,4 +1,4 @@
-name = depo
+name = mrepo
version = $(shell awk '/^Version: / {print $$2}' $(name).spec)
prefix = /usr
@@ -13,22 +13,22 @@ localstatedir = /var
httpddir = $(sysconfdir)/httpd/conf.d
initrddir = $(sysconfdir)/rc.d/init.d
-cachedir = $(localstatedir)/cache/depo
-htmldir = $(datadir)/depo/html
-srcdir = $(localstatedir)/depo
-wwwdir = $(localstatedir)/www/depo
+cachedir = $(localstatedir)/cache/mrepo
+htmldir = $(datadir)/mrepo/html
+srcdir = $(localstatedir)/mrepo
+wwwdir = $(localstatedir)/www/mrepo
all:
@echo "There is nothing to be build. Try install !"
install:
install -Dp -m0755 gensystemid $(DESTDIR)$(bindir)/gensystemid
install -Dp -m0755 rhnget $(DESTDIR)$(bindir)/rhnget
- install -Dp -m0755 depo $(DESTDIR)$(bindir)/depo
- [ ! -f $(DESTDIR)$(sysconfdir)/depo.conf ] && install -D -m0600 config/depo.conf $(DESTDIR)$(sysconfdir)/depo.conf || :
- install -d -m0755 $(DESTDIR)$(sysconfdir)/depo.conf.d/
- install -Dp -m0644 config/httpd/depo.conf $(DESTDIR)$(httpddir)/depo.conf
- install -Dp -m0755 config/depo $(DESTDIR)$(initrddir)/depo
+ install -Dp -m0755 mrepo $(DESTDIR)$(bindir)/mrepo
+ [ ! -f $(DESTDIR)$(sysconfdir)/mrepo.conf ] && install -D -m0600 config/mrepo.conf $(DESTDIR)$(sysconfdir)/mrepo.conf || :
+ install -d -m0755 $(DESTDIR)$(sysconfdir)/mrepo.conf.d/
+ install -Dp -m0644 config/httpd/mrepo.conf $(DESTDIR)$(httpddir)/mrepo.conf
+ install -Dp -m0755 config/mrepo $(DESTDIR)$(initrddir)/mrepo
install -d -m0755 $(DESTDIR)$(htmldir)
install -p -m0644 html/* $(DESTDIR)$(htmldir)
@@ -37,14 +37,14 @@ install:
install -d -m0755 $(DESTDIR)$(wwwdir)
install -d -m0755 $(DESTDIR)$(cachedir)
- [ "$(DESTDIR)" -o ! -f "$(DESTDIR)$(sysconfdir)/cron.d/depo" ] && install -Dp -m0644 config/depo.cron $(DESTDIR)$(sysconfdir)/cron.d/depo || :
+ [ "$(DESTDIR)" -o ! -f "$(DESTDIR)$(sysconfdir)/cron.d/mrepo" ] && install -Dp -m0644 config/mrepo.cron $(DESTDIR)$(sysconfdir)/cron.d/mrepo || :
- install -Dp -m0644 config/depo.logrotate $(DESTDIR)$(sysconfdir)/logrotate.d/depo
+ install -Dp -m0644 config/mrepo.logrotate $(DESTDIR)$(sysconfdir)/logrotate.d/mrepo
@if [ -z "$(DESTDIR)" -a -x "/sbin/chkconfig" ]; then \
- /sbin/chkconfig --add depo; \
+ /sbin/chkconfig --add mrepo; \
elif [ -z "$(DESTDIR)" -a -x "$(sbindir)/chkconfig" ]; then \
- $(sbindir)/chkconfig --add depo; \
+ $(sbindir)/chkconfig --add mrepo; \
fi
docs:
View
6 README
@@ -1,4 +1,4 @@
-Depo builds a local APT/Yum RPM repository from local ISO files, downloaded
+mrepo builds a local APT/Yum RPM repository from local ISO files, downloaded
updates, and extra packages from 3rd party repositories. It takes care of
setting up the ISO files, downloading the RPMs, configuring HTTP access
and providing PXE/TFTP resources for remote installations.
@@ -8,11 +8,11 @@ distributions from a laptop without the need for CD media or floppies, but
is equally suitable for an organisation's centralized update server.
Doing a remote installation only requires a configured DHCP-server, the
-TFTP service and a Webserver configured with Depo. Then boot your system
+TFTP service and a Webserver configured with mrepo. Then boot your system
using a PXE-enabled network card.
For updating your local systems, configure either Apt, Yum or up2date and
-point them to your local Depo server.
+point them to your local mrepo server.
---
Please send me improvements to this document.
View
22 TODO
@@ -30,7 +30,7 @@ contact me as well. :) Send an email to: Dag Wieers <dag@wieers.com>
+ Add YaST/YOU support (both for mirroring as providing metadata, seems impossible ?)
### Reporting utility
-+ Logwatch configuration for Depo
++ Logwatch configuration for mrepo
+ Mail out new updates or removals per distribution and per repository
### Configuration
@@ -43,7 +43,7 @@ contact me as well. :) Send an email to: Dag Wieers <dag@wieers.com>
iso = file:///mnt/iso/*.iso
iso = fedora/fc$release-$arch/FC-$release-$arch-disc?.iso"
-+ Add more working distributions to /etc/depo.conf.d/
++ Add more working distributions to /etc/mrepo.conf.d/
### Usability
+ Create information about repository-updates in HEADER.shtml/README.shtml
@@ -56,11 +56,11 @@ contact me as well. :) Send an email to: Dag Wieers <dag@wieers.com>
+ Allow to add external html generators (repoview, repojanitor)
### Documentation
-+ Add a depo and depo.conf manpage
++ Add a mrepo and mrepo.conf manpage
+ Add a gensystemid and rhnget manpage
+ Add documentation on how to configure clients
+ Add integration/documentation with ISC dhcpd
-+ Add documentation about chaining Depo servers
++ Add documentation about chaining mrepo servers
+ Comment the code more (pydoc strings)
+ ZeroConf support (or documentation)
+ Comply with PEP8: http://www.python.org/dev/peps/pep-0008/
@@ -73,7 +73,7 @@ contact me as well. :) Send an email to: Dag Wieers <dag@wieers.com>
### Bugs
+ yum-arch stumbles on broken symlinks (https://devel.linux.duke.edu/bugzilla/show_bug.cgi?id=280)
-+ Correct file permissions/ownerships of packages in /var/depo (add umask option)
++ Correct file permissions/ownerships of packages in /var/mrepo (add umask option)
+ Improve debugging output for pxelinux and /tftpboot/
### RHNget tool / RHN support
@@ -87,13 +87,13 @@ contact me as well. :) Send an email to: Dag Wieers <dag@wieers.com>
+ Implement better channel support (a way to use _all_ channels)
+ Allow for listing packages instead of downloading (--dry-run ?)
-### Depocfg tool / generate a configuration for clients (Chandan Dutta Chowdhury)
+### mrepocfg tool / generate a configuration for clients (Chandan Dutta Chowdhury)
+ The tool should accept a URL as an argument
+ Should have a list (-l) option to list the different distributions
+ Should have a target (-t) option to specify the configuration output format (apt/yum/smart)
+ It scans the URL given and looks for know repository metadata
-### Depogen tool / repository metadata
+### mrepogen tool / repository metadata
+ Replaces genbasedir, createrepo and yum-arch
+ Creates rsyncable bzip2 and gzip data
+ Uses 1 cachedir for all generation
@@ -108,18 +108,18 @@ contact me as well. :) Send an email to: Dag Wieers <dag@wieers.com>
if repo is provided, create symlinks in dirname() for RPMS.repo
+ Also see: http://people.redhat.com/laroche/pyrpm/
-### Depomenu tool / remote installation
+### mrepomenu tool / remote installation
+ Create small curses tool to manage systems / MAC-addresses / profiles (kickstart)
+ Generate remote syslinux menu to boot any of the available dists
+ Look into providing bootsplash like SuSE
-+ Generate a dnsmasq-depo.conf if dnsmasq is installed/running(?)
++ Generate a dnsmasq-mrepo.conf if dnsmasq is installed/running(?)
+ Add default kickstart integration (files/location)
+ Add default AutoYast integration (help needed)
+ Adapt to make Mandrake/SuSE work too (help needed)
+ Add CSM support
-### Depopxe tool
+### mrepopxe tool
+ Generates necessary PXE config-files and allow for 3rd party boot-images
-### Depousb tool
+### mrepousb tool
+ Create a bootable USB stick and allow for 3rd party boot-images
View
4 config/dnsmasq-mrepo.conf
@@ -1,5 +1,5 @@
### Red Hat Enterprise 3 for x86
-dhcp-boot=/depo/rhel3as-i386/pxelinux.0,emyn,10.0.0.1
+dhcp-boot=/mrepo/rhel3as-i386/pxelinux.0,emyn,10.0.0.1
### Fedora Core 2 for x86
-#dhcp-boot=/depo/fc2-i386/pxelinux.0,emyn,10.0.0.1
+#dhcp-boot=/mrepo/fc2-i386/pxelinux.0,emyn,10.0.0.1
View
24 config/httpd/mrepo.conf
@@ -1,7 +1,7 @@
### Directory-based for the main server
-Alias /depo /var/www/depo
+Alias /mrepo /var/www/mrepo
-<Directory /var/www/depo>
+<Directory /var/www/mrepo>
Options Indexes FollowSymlinks SymLinksifOwnerMatch IncludesNOEXEC
IndexOptions NameWidth=* DescriptionWidth=*
@@ -12,7 +12,7 @@ Alias /depo /var/www/depo
#allow from horsea.3ti.be
#allow from pikachu.3ti.be
- #AuthUserFile /var/depo/auth/.htpasswd
+ #AuthUserFile /var/mrepo/auth/.htpasswd
#Require user bert dag dries thias
HeaderName HEADER.shtml
@@ -112,18 +112,18 @@ Alias /depo /var/www/depo
AddDescription "Yellow Dog Linux 4.0 for PPC" yd4-ppc
</Directory>
-### Name based virtual-host named "depo"
+### Name based virtual-host named "mrepo"
### """"""""""""""""""""""""""""""""""""
-### The purpose of this virtual host is to provide a URL http://depo/
+### The purpose of this virtual host is to provide a URL http://mrepo/
### as a standard on your local network and map it to the correct IP
### for the different networks that have access to it.
#
-#NameVirtualHost depo:80
+#NameVirtualHost mrepo:80
#
-#<VirtualHost depo:80>
-# ServerName depo
-# ServerAlias depo.3ti.be depo.localdomain
-# DocumentRoot /var/www/depo
-# ErrorLog logs/depo-error_log
-# CustomLog logs/depo-access_log combined
+#<VirtualHost mrepo:80>
+# ServerName mrepo
+# ServerAlias mrepo.3ti.be mrepo.localdomain
+# DocumentRoot /var/www/mrepo
+# ErrorLog logs/mrepo-error_log
+# CustomLog logs/mrepo-access_log combined
#</VirtualHost>
View
22 config/mrepo
@@ -1,35 +1,35 @@
#!/bin/bash
#
-# Init script for Depo distribution server.
+# Init script for mrepo distribution server.
#
# Written by Dag Wieers <dag@wieers.com>.
#
# chkconfig: 2345 90 10
-# description: Depo distribution server.
+# description: mrepo distribution server.
#
-# processname: depo
-# config: /etc/depo.conf
+# processname: mrepo
+# config: /etc/mrepo.conf
source /etc/rc.d/init.d/functions
-[ -x /usr/bin/depo ] || exit 1
+[ -x /usr/bin/mrepo ] || exit 1
### Default variables
-SYSCONFIG="/etc/sysconfig/depo"
-YAMCONFIG="/etc/depo.conf"
+SYSCONFIG="/etc/sysconfig/mrepo"
+YAMCONFIG="/etc/mrepo.conf"
### Read configuration
[ -r "$SYSCONFIG" ] && source "$SYSCONFIG"
[ -r "$YAMCONFIG" ] || exit 1
RETVAL=0
-prog="depo"
-desc="Depo Distribution Server"
+prog="mrepo"
+desc="meepo Distribution Server"
start() {
echo -n $"Starting $desc ($prog): "
- depo -q -c $YAMCONFIG
+ mrepo -q -c $YAMCONFIG
RETVAL=$?
[ $RETVAL -eq 0 ] && success || failure
echo
@@ -39,7 +39,7 @@ start() {
stop() {
echo -n $"Shutting down $desc ($prog): "
- depo -q --umount -c $YAMCONFIG
+ mrepo -q --umount -c $YAMCONFIG
RETVAL=$?
[ $RETVAL -eq 0 ] && success || failure
echo
View
10 config/mrepo-complex.conf
@@ -1,10 +1,10 @@
-### Configuration file for Depo
+### Configuration file for mrepo
-### The [main] section allows to override Depo's default settings
-### The depo-example.conf gives an overview of all the possible settings
+### The [main] section allows to override mrepo's default settings
+### The mrepo-example.conf gives an overview of all the possible settings
[main]
-srcdir = /var/depo
-wwwdir = /var/www/depo
+srcdir = /var/mrepo
+wwwdir = /var/www/mrepo
arch = i386
#rhnlogin = username:password
View
20 config/mrepo-example.conf
@@ -1,4 +1,4 @@
-### Configuration file for Depo
+### Configuration file for mrepo
### These options show you the hardcoded defaults
### You can leave them out if this is what you want
@@ -11,19 +11,19 @@
arch = i386
## The location of the example .shtml files
-htmldir = /usr/share/depo/html
+htmldir = /usr/share/mrepo/html
## The location of the (latest) pxelinux bootcode
pxelinux = /usr/lib/syslinux/pxelinux.0
## The location of the ISO images and RPM files
-srcdir = /var/depo
+srcdir = /var/mrepo
## The location of the Yam TFTP files
-tftpdir = /tftpboot/depo
+tftpdir = /tftpboot/mrepo
## The location of the generated repositories
-wwwdir = /var/www/depo
+wwwdir = /var/www/mrepo
## The location of the different executables
createrepocmd = /usr/bin/createrepo
@@ -43,7 +43,7 @@ metadata = repomd
rhnlogin =
## Specify the required proxy settings
-#no_proxy = localhost,depo,webserver
+#no_proxy = localhost,mrepo,webserver
#ftp_proxy = http://10.1.2.3:8080
#http_proxy = http://10.1.2.3:8080
#https_proxy = http://10.1.2.3:8080
@@ -110,7 +110,7 @@ mirrordir-options =
skip-metadata = all
-### Example1: Using ISO files (put ISOs in /var/depo/dist1-i386), i386 is default arch
+### Example1: Using ISO files (put ISOs in /var/mrepo/dist1-i386), i386 is default arch
[dist1]
name = Distribution example $release ($arch)
release = 1
@@ -135,7 +135,7 @@ arch = x86_64
metadata = apt repomd
iso = dist$release-$arch-disc?.iso
os = rsync://rsync.dist3.org/pub/dist/$release/$arch/$repo/
-updates = depo://dist1-$arch/$repo/
+updates = mrepo://dist1-$arch/$repo/
contrib = rsync://rsync.dist3.org/pub/dist/$release/$arch/$repo/
### Example4: Merging repositories
@@ -145,5 +145,5 @@ release = 4
metadata = apt repomd yum
contrib = rsync://rsync.dist4.org/dist/$release/$arch/$repo/
extras = rsync://rsync.dist4.org/dist/$release/$arch/$repo/
-merge = depo://$nick/contrib/
- depo://$nick/extras/
+merge = mrepo://$nick/contrib/
+ mrepo://$nick/extras/
View
14 config/mrepo.conf
@@ -1,11 +1,11 @@
-### Configuration file for Depo
+### Configuration file for mrepo
-### The [main] section allows to override Depo's default settings
-### The depo-example.conf gives an overview of all the possible settings
+### The [main] section allows to override mrepo's default settings
+### The mrepo-example.conf gives an overview of all the possible settings
[main]
-srcdir = /var/depo
-wwwdir = /var/www/depo
-confdir = /etc/depo.conf.d
+srcdir = /var/mrepo
+wwwdir = /var/www/mrepo
+confdir = /etc/mrepo.conf.d
arch = i386
mailto = root@localhost
@@ -14,5 +14,5 @@ smtp-server = localhost
#rhnlogin = username:password
### Any other section is considered a definition for a distribution
-### You can put distribution sections in /etc/depo.conf.d
+### You can put distribution sections in /etc/mrepo.conf.d
### Examples can be found in the documentation.
View
4 config/mrepo.cron
@@ -1,3 +1,3 @@
-### Enable this if you want Depo to daily synchronize
+### Enable this if you want mrepo to daily synchronize
### your distributions and repositories at 2:30am.
-#30 2 * * * root /usr/bin/depo -q -ug
+#30 2 * * * root /usr/bin/mrepo -q -ug
View
2 config/mrepo.logrotate
@@ -1,4 +1,4 @@
-/var/log/depo.log {
+/var/log/mrepo.log {
missingok
notifempty
copytruncate
View
8 docs/Makefile
@@ -10,10 +10,10 @@ localstatedir = /var
httpddir = $(sysconfdir)/httpd/conf.d
initrddir = $(sysconfdir)/rc.d/init.d
-cachedir = $(localstatedir)/cache/depo
-htmldir = $(datadir)/depo/html
-srcdir = $(localstatedir)/depo
-wwwdir = $(localstatedir)/www/depo
+cachedir = $(localstatedir)/cache/mrepo
+htmldir = $(datadir)/mrepo/html
+srcdir = $(localstatedir)/mrepo
+wwwdir = $(localstatedir)/www/mrepo
all: .txt
View
10 docs/directories.txt
@@ -3,15 +3,15 @@ Short explanation of directory structure
Configuration directory
-----------------------
-confdir = /etc/depo.conf.d
+confdir = /etc/mrepo.conf.d
$dist.conf - Distribution configuration files
$dist-$arch.conf - Distribution configuration files
Source directory
----------------
-srcdir = /var/depo
+srcdir = /var/mrepo
all/ - - Global directory
local/ - Directory for custom packages
@@ -24,7 +24,7 @@ srcdir = /var/depo
Web directory
-------------
-wwwdir = /var/www/depo
+wwwdir = /var/www/mrepo
$dist/
disc?/ - Loop-mounted ISO images
@@ -39,8 +39,8 @@ wwwdir = /var/www/depo
fc3-i386/ - Fedora Core 3 / i386
per dist-arch one directory, autogenerated
- you can remove everything from here and regenerated with Depo
- please don't add packages here, see /var/depo/all !
+ you can remove everything from here and regenerated with mrepo
+ please don't add packages here, see /var/mrepo/all !
---
Please send me improvements to this document.
View
12 docs/dnsmasq-configuration.txt
@@ -1,13 +1,13 @@
-Configuring dnsmasq to work with Depo
-=====================================
+Configuring dnsmasq to work with mrepo
+======================================
-To set up depo with dnsmasq, put the following lines in /etc/dnsmasq.conf:
+To set up mrepo with dnsmasq, put the following lines in /etc/dnsmasq.conf:
### Red Hat Enterprise 3 for x86
- dhcp-boot=/depo/rhel3as-i386/pxelinux.0,emyn,10.0.0.1
+ dhcp-boot=/mrepo/rhel3as-i386/pxelinux.0,emyn,10.0.0.1
### Fedora Core 2 for x86
- #dhcp-boot=/depo/fc2-i386/pxelinux.0,emyn,10.0.0.1
+ #dhcp-boot=/mrepo/fc2-i386/pxelinux.0,emyn,10.0.0.1
The syntax is:
@@ -19,7 +19,7 @@ IP address with DHCP, add the MAC-address and hostname/ip-address to
/etc/hosts:
127.0.0.1 localhost
- 10.0.0.1 depo
+ 10.0.0.1 mrepo
10.0.0.10 host1
10.0.0.11 host2
View
24 docs/proxy-configuration.txt
@@ -1,7 +1,7 @@
-Using Depo behind a proxy server
-================================
+Using mrepo behind a proxy server
+=================================
-If you're using Depo behind a proxy-server, you're out of luck for rsync
+If you're using mrepo behind a proxy-server, you're out of luck for rsync
support. Rsync has its own protocol that is not allowed through a normal
proxy.
@@ -12,7 +12,7 @@ configure one or some of the following environment variables:
export https_proxy="http://proxy:8080"
export http_proxy="http://proxy:8080"
export ftp_proxy="http://proxy:8080"
-export no_proxy="localhost,depo,webserver"
+export no_proxy="localhost,mrepo,webserver"
----
lftp will understand these environment variables and use them. However you
@@ -21,15 +21,15 @@ configuration, as well as, make a custom configuration in /etc/lftp.conf
or ~/.lftprc
-Depo configuration
-------------------
-If you prefer not to set them as environment variables or are using Depo
+mrepo configuration
+-------------------
+If you prefer not to set them as environment variables or are using mrepo
in a cron-job (where these variables are not set by default), you can
-add the configuration to /etc/depo.conf:
+add the configuration to /etc/mrepo.conf:
----
[main]
-no_proxy = localhost,depo,webserver
+no_proxy = localhost,mrepo,webserver
ftp_proxy = http://10.1.2.3:8080
http_proxy = http://10.1.2.3:8080
https_proxy = http://10.1.2.3:8080
@@ -40,11 +40,11 @@ Depending on what protocols you are using.
Picky HTTP proxies
------------------
-There have been reports of people who cannot use Depo using lftp on http
+There have been reports of people who cannot use mrepo using lftp on http
sites using their corporate HTTP proxy. This has to do with the fact
that these proxies have problems with the HEAD command on http:// or
ftp:// URLs. You can work around that by defining the following in your
-/etc/depo.conf:
+/etc/mrepo.conf:
lftp-commands = set hftp:use-head 0
@@ -54,7 +54,7 @@ consult the lftp(1) manual page and look at the *Settings* section.
Other problems ?
----------------
-If you have specific requirements or can't make Depo work under certain
+If you have specific requirements or can't make mrepo work under certain
circumstances, let me know. We can look at the use-case and see if it is
worthwhile to make an exception (or bugfix) for your scenario.
View
50 docs/quickstart.txt
@@ -33,30 +33,30 @@ Do the following steps to get started (real) fast.
1. Start with collecting the existing ISO files you have of the
different distributions you want to put into a repository.
- Put these into your $srcdir (normally /var/depo), eg:
+ Put these into your $srcdir (normally /var/mrepo), eg:
- /var/depo/fc3-i386/
+ /var/mrepo/fc3-i386/
- 2. Edit /etc/depo.conf and add for each distribution a new section
- like the examples given in the default depo.conf, depo-complex.conf
- or depo-example.conf
+ 2. Edit /etc/mrepo.conf and add for each distribution a new section
+ like the examples given in the default mrepo.conf, mrepo-complex.conf
+ or mrepo-example.conf
- You can add a distribution section to a new file in /etc/depo.conf.d/
+ You can add a distribution section to a new file in /etc/mrepo.conf.d/
- eg. /etc/depo.conf.d/fc3-i386.conf
+ eg. /etc/mrepo.conf.d/fc3-i386.conf
See the examples in the documentation as a reference.
3. If you want to add your own custom packages to one or all of
the repositories, you have 2 options.
- a. Add them to /var/depo/<distro>-<arch>/local/
+ a. Add them to /var/mrepo/<distro>-<arch>/local/
- eg. /var/depo/fc3-i386/local/
+ eg. /var/mrepo/fc3-i386/local/
- or add them to /var/depo/all/local/ to add them to all.
+ or add them to /var/mrepo/all/local/ to add them to all.
b. Specify the directory of your choice in a new repository,
eg. called 'myrepo'
@@ -76,49 +76,49 @@ Do the following steps to get started (real) fast.
repositories.
- 4. Now run Depo with no actions to see if the ISO files are mounted
+ 4. Now run mrepo with no actions to see if the ISO files are mounted
and all your configuration options have been used:
- depo -vv
+ mrepo -vv
- Then run Depo to update the repositories:
+ Then run mrepo to update the repositories:
- depo -uvv
+ mrepo -uvv
- Then generate the Depo repositories by doing:
+ Then generate the mrepo repositories by doing:
- depo -gvv
+ mrepo -gvv
- Now look in $wwwdir (normally /var/www/depo) or surf to
- http://localhost/depo/ to see if everything is the way you wanted.
+ Now look in $wwwdir (normally /var/www/mrepo) or surf to
+ http://localhost/mrepo/ to see if everything is the way you wanted.
5. Next time you can do directly
- depo -ug
+ mrepo -ug
or
- depo -ugv
+ mrepo -ugv
and all steps will be performed in one phase.
- 6. If you're removing distributions from the depo.conf file and
+ 6. If you're removing distributions from the mrepo.conf file and
you want to remove the ISOs to gain diskspace. Remember that
Linux will not release diskspace for files that are still
accessed (like a loop-mounted ISO file). You're best bet is
to first unmount the ISOs:
- depo -vv --umount
+ mrepo -vv --umount
then remove or comment the distributions and mount again:
- depo -vv
+ mrepo -vv
7. When you're adding new distributions, it's sufficient to just
- run Depo again. It will automatically mount everything that is
+ run mrepo again. It will automatically mount everything that is
not already mounted. You can always remount/reset by doing:
- depo -vv --remount
+ mrepo -vv --remount
---
Please send me improvements to this document.
View
66 docs/redhat-network.txt
@@ -1,5 +1,5 @@
-Using RHN support in Depo
-=========================
+Using RHN support in mrepo
+==========================
Requirements
------------
@@ -10,24 +10,24 @@ another up2date package (eg. Fedora Core).
RHN systemid creation
---------------------
-For each distribution you want to add to Depo, you need to have a valid
+For each distribution you want to add to mrepo, you need to have a valid
RHN systemid. You can create a systemid (provided you have the correct
entitlements to do so) by using the gensystemid tool that comes with
-depo, eg.
+mrepo, eg.
---
-gensystemid -r 4AS -a x86_64 /var/depo/rhel4as-x86_64
+gensystemid -r 4AS -a x86_64 /var/mrepo/rhel4as-x86_64
----
-The tool will create a new system called <hostname>-4AS-x86_64-depo,
+The tool will create a new system called <hostname>-4AS-x86_64-mrepo,
register this system on RHN and create a systemid file in
-/var/depo/rhel4as-x86_64
+/var/mrepo/rhel4as-x86_64
RHN configuration
-----------------
Having done that, you can enable multiple channels for this systemid
-on the RHN website. And then configure depo to use these channels, eg.
+on the RHN website. And then configure mrepo to use these channels, eg.
----
[rhel4as]
@@ -43,7 +43,7 @@ rhaps = rhns:///rhel-4-as-i386-rhaps-2
rhds = rhns:///rhel-4-as-i386-rhds-2.1
----
-After that, depo should be able to successfully log on and download
+After that, mrepo should be able to successfully log on and download
all packages for the configured channels.
@@ -58,11 +58,11 @@ and I have personally been several times in the situation that I needed
to download x86_64 or ppc packages for a system that I have entitlements
for but is simply not allowed to connect to the Internet.
-The gensystemid tool that comes with Depo will help you with creating
-valid systemids for Depo, eg.
+The gensystemid tool that comes with mrepo will help you with creating
+valid systemids for mrepo, eg.
----
-gensystemid -r 4AS -a x86_64 /var/depo/rhel4as-x86_64
+gensystemid -r 4AS -a x86_64 /var/mrepo/rhel4as-x86_64
----
You can manage your systems on the RHN website afterwards.
@@ -72,7 +72,7 @@ WARNING: For yet unknown reasons, you have to be root to run gensystemid.
Downloading from unsubscribed channels
--------------------------------------
-You can let Depo subscribe to the necessary channels, unfortunately this
+You can let mrepo subscribe to the necessary channels, unfortunately this
requires your RHN username and password. You can provide these in
the main section, like:
@@ -82,28 +82,28 @@ rhnlogin = username:password
----
Or you can supply them to rhnget at the appropriate time. Unfortunately since
-rhnget is a seperate tool invoked by Depo, you may need to provide this
+rhnget is a seperate tool invoked by mrepo, you may need to provide this
information several times (every time you need to subscribe to a new channel).
-You can also choose to only provide the username in /etc/depo.conf and provide
+You can also choose to only provide the username in /etc/mrepo.conf and provide
the password interactively.
----
[main]
rhnlogin = username
----
-Of course if you put the password in /etc/depo.conf, you need to protect it.
+Of course if you put the password in /etc/mrepo.conf, you need to protect it.
You may want to do:
----
-chmod og= /etc/depo.conf
-chown root.root /etc/depo.conf
+chmod og= /etc/mrepo.conf
+chown root.root /etc/mrepo.conf
----
Since you only need the username/password to subscribe to new channels
(only the very first time you access them) you may wish to remove the
-login information from depo.conf after that.
+login information from mrepo.conf after that.
You can also log on manually to the RHN website to subscribe your system
to the channels you require.
@@ -114,13 +114,13 @@ Configuring up2date sources
If you encounter the following message:
Traceback (most recent call last):
- File "/usr/bin/depo", line 1364, in ?
+ File "/usr/bin/mrepo", line 1364, in ?
main()
- File "/usr/bin/depo", line 1247, in main
+ File "/usr/bin/mrepo", line 1247, in main
mirror(dist.repos[repo], srcdir, dist)
- File "/usr/bin/depo", line 819, in mirror
+ File "/usr/bin/mrepo", line 819, in mirror
mirrorrhn(url, path, dist)
- File "/usr/bin/depo", line 1099, in mirrorrhn
+ File "/usr/bin/mrepo", line 1099, in mirrorrhn
package_list, type = rpcServer.doCall(repos.listPackages, channel, None, None)
File "/usr/share/rhn/up2date_client/rpcServer.py", line 316, in doCall
ret = apply(method, args, kwargs)
@@ -134,7 +134,7 @@ you need to configure up2date by adding or enabling the following line in
up2date default
Especially on a system that wasn't using RHN or on CentOS this is a manual
-change you have to make. Depo doesn't really care, but the up2date
+change you have to make. mrepo doesn't really care, but the up2date
implementation it is using simply requires it.
@@ -191,8 +191,8 @@ You can simply get the same effect with the following script, clean.sh:
#!/bin/bash
dists=$*
-srcdir=/var/depo
-wwwdir=/var/www/depo
+srcdir=/var/mrepo
+wwwdir=/var/www/mrepo
if [ -z "$dists" ]; then
cd $srcdir
@@ -220,15 +220,15 @@ done
----
Run this script when you download new RHEL ISO files and make these available
-in Depo, but before downloading any updates from RHN.
+in mrepo, but before downloading any updates from RHN.
----
-depo --umount
+mrepo --umount
### Download new ISO files
-### Change /etc/depo.conf to change the iso=
-depo -v
+### Change /etc/mrepo.conf to change the iso=
+mrepo -v
./clean.sh
-depo -uvg
+mrepo -uvg
----
This will free up some space by symlinking duplicate RPM packages from the ISO
@@ -250,7 +250,7 @@ In this case, the authentication is not done using SSL either !
Using Red Hat satellite servers
-------------------------------
You can override the hardcoded RHN server by specifying it in the URL.
-If it is not specified, Depo will assume a default value of
+If it is not specified, mrepo will assume a default value of
xmlrpc.rhn.redhat.com
So the following two lines are identical:
@@ -298,7 +298,7 @@ A useful list of RHN references:
RHbz 179721: [RFE] No documentation for (RHN) up2date XMLRPC API methods
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=179721
-And how to configure Depo for RHN access:
+And how to configure mrepo for RHN access:
Installing YAM 0.8.0 on Red Hat Enterprise Linux 4
http://wiki.garylaw.net/doku.php?id=technical:unix:linux:yam
View
16 docs/selinux.txt
@@ -1,36 +1,36 @@
-Configuring Depo for selinux
-----------------------------
-The most simple way to make Depo work on selinux is to map the Depo
+Configuring mrepo for selinux
+-----------------------------
+The most simple way to make mrepo work on selinux is to map the mrepo
documentroot to the httpd context.
You can do this by doing:
- chcon -Rh --reference /var/www/html /var/www/depo
+ chcon -Rh --reference /var/www/html /var/www/mrepo
Another way is to create the file
/etc/selinux/targeted/src/policy/file_contexts/misc/local.fc,
with the following content:
- /var/depo(/.*)? system_u:object_r:httpd_sys_content_t
+ /var/mrepo(/.*)? system_u:object_r:httpd_sys_content_t
Afterwards recompile the policy by doing:
make -C /etc/selinux/targeted/src load
And apply the context by doing:
- restorecon -R /var/depo
+ restorecon -R /var/mrepo
I'd like this to be done by default, either from the RPM package or by the
-system itself. Depo could be told to do this as well but I'm not sure if
+system itself. mrepo could be told to do this as well but I'm not sure if
this is the proper way to handle selinux.
Slightly more complicated selinux contribution
----------------------------------------------
David Hampton contributed a slightly more complicated selinux configuration
-that defines its own Depo objects and context, you can find those files in
+that defines its own mrepo objects and context, you can find those files in
the patches/ directory. SElinux improvements are welcome (as well as
information on how to standardize
View
4 docs/suse-support.txt
@@ -63,8 +63,8 @@ Yast2 has its own logic to create these directories and if you have to
install SLES8 or SLES9, it's better to make use of the Yast2 functionality.
(Yes, this means you're once again locked into something SuSE specific)
-Depo will not support SLES until they clean up their act or someone sends me
-an acceptable patch for Depo. The current SLES support stays unfinished like
+mrepo will not support SLES until they clean up their act or someone sends me
+an acceptable patch for mrepo. The current SLES support stays unfinished like
it is.
Based on the above information, you are of course free to perform the
View
100 docs/usage.txt
@@ -1,111 +1,111 @@
-Usage information for Depo and a description of the options and config file
-===========================================================================
+Usage information for mrepo and a description of the options and config file
+============================================================================
-depo is used to create a repository on your server from multiple sources.
+mrepo is used to create a repository on your server from multiple sources.
Finding help on the command line
--------------------------------
-depo -h
-usage: depo [-g] [-q] [-u] [-v] [-c config] dist1 dist2-arch
+mrepo -h
+usage: mrepo [-g] [-q] [-u] [-v] [-c config] dist1 dist2-arch
Set up a distribution server from ISO files
-Depo options:
+mrepo options:
-c, --config=file specify alternative configfile
- -g, --generate generate Depo repositories
+ -g, --generate generate mrepo repositories
-q, --quiet minimal output
-u, --update fetch OS updates
- -v, --verbose increase verbosity (only Depo info)
+ -v, --verbose increase verbosity (only mrepo info)
-vv, -vvv increase verbosity more
--unmount unmount distributions
-When you first run Depo, do:
+When you first run mrepo, do:
- depo -v
+ mrepo -v
This will show you what it is doing. You may add extra -v at any time
-to see more of Depo's internals.
+to see more of mrepo's internals.
- depo -vvv
+ mrepo -vvv
-Now, you may want to change the default depo.conf to your needs and
+Now, you may want to change the default mrepo.conf to your needs and
add or remove distributions and/or repositories. If you have ISO
images of any of the distributions you want to mirror, mention them
-too like in the examples, and copy them over to /var/depo/iso
+too like in the examples, and copy them over to /var/mrepo/iso
(You can also decide to put them per distribution/arch)
-The default directory structure that Depo uses is explained in
+The default directory structure that mrepo uses is explained in
README.dirs
-Depo by default will mount as many ISO files as possible. If you
+mrepo by default will mount as many ISO files as possible. If you
have problems with the maximum number of loop devices, please read
README.loop
-Depo can also download the distribution RPM packages if you want to,
+mrepo can also download the distribution RPM packages if you want to,
if you did not specify any ISO images it will download any os or core
repositories that you have specified. To do that, do
- depo -u
+ mrepo -u
or
- depo -uv
+ mrepo -uv
To finally generate a complete working repository based on the
repositories, you need to issues:
- depo -g
+ mrepo -g
or
- depo -gv
+ mrepo -gv
-This will look for all the necessary packages in /var/depo (srcdir) and
-symlink them to /var/www/depo (wwwdir). /var/www/depo can also be removed
+This will look for all the necessary packages in /var/mrepo (srcdir) and
+symlink them to /var/www/mrepo (wwwdir). /var/www/mrepo can also be removed
at any time and should not contain any files you have put there yourself.
To start off from scratch, first unmount the ISO images by doing:
- depo --unmount
+ mrepo --unmount
-and then remove /var/www/depo completely. This should never be needed,
+and then remove /var/www/mrepo completely. This should never be needed,
but can be done after you played around or when removing components.
If you want to update only a part of your repository, you can select
the distributions by doing:
- depo -ugv fc2
+ mrepo -ugv fc2
or
- depo -ugv fc2-i386
+ mrepo -ugv fc2-i386
or even
- depo -ugv fc2-i386 fc1-x86_64
+ mrepo -ugv fc2-i386 fc1-x86_64
-If you want to have multiple setups of Depo running on a single system
+If you want to have multiple setups of mrepo running on a single system
(say one of your users wants its own setup), you can specify an
alternative config file, by doing:
- depo -c /home/dag/depo.conf
+ mrepo -c /home/dag/mrepo.conf
In that case the user may want to use another srcdir and wwwdir.
-Finally, you can see if everything worked, by looking at /var/www/depo
-(wwwdir) or by surfing to http://localhost/depo/. For more information
+Finally, you can see if everything worked, by looking at /var/www/mrepo
+(wwwdir) or by surfing to http://localhost/mrepo/. For more information
about web-access and configuration, see README.web
-The depo.conf file
------------------
-depo.conf file holds all the information depo uses to find the repos such
-as distribution information and URLs to the repos. depo.conf is essentially
+The mrepo.conf file
+-------------------
+mrepo.conf file holds all the information mrepo uses to find the repos such
+as distribution information and URLs to the repos. mrepo.conf is essentially
divided into three areas. main, repos, and dist.
-The main area is your main configuration for depo.
-Example from default depo.conf:
+The main area is your main configuration for mrepo.
+Example from default mrepo.conf:
[main]
- srcdir=/var/depo
- wwwdir=/var/www/depo
+ srcdir=/var/mrepo
+ wwwdir=/var/www/mrepo
metadata=apt repomd
arch=i386
-The srcdir is where depo will download and store the files for your repo
+The srcdir is where mrepo will download and store the files for your repo
The wwwdir is the location as to where your users for your repo will actually
get the files from. These are symbolic links to the srcdir.
@@ -116,7 +116,7 @@ defined the default used if nothing is specified per distribution.
arch is a list of the default architectures, i.e. i386, x86_64.
This will set it globally but can be configured per distro.
-The distro area of depo.conf is the heart of depo.conf it is where you can
+The distro area of mrepo.conf is the heart of mrepo.conf it is where you can
specify the exact distribution and URLs to download from. Let me demonstrate
with a little example:
@@ -140,28 +140,28 @@ Other tags you can include per section are:
arch = is set to one or more architectures available for this distribution ($arch)
iso = is set to one or more globs matching the distributions ISO images
-Any other entries are considered to be repositories. Depo will assume that
+Any other entries are considered to be repositories. mrepo will assume that
repositories called 'os', 'core' and 'updates' are base system repositories
-and these will be updated with Depo option -u . os and core repositories will
+and these will be updated with mrepo option -u . os and core repositories will
be ignored when ISO images are available.
-Other entries are considered extra (3rd party) repositories. Depo will create
-a separate directory for each of these in /var/depo/$dist-$arch/$repo
+Other entries are considered extra (3rd party) repositories. mrepo will create
+a separate directory for each of these in /var/mrepo/$dist-$arch/$repo
The LHS part can also be used in the RHS as variable $repo
Other special variables include:
- $srcdir is set to the srcdir variable from depo.conf
+ $srcdir is set to the srcdir variable from mrepo.conf
$dist is set to the distribution section name (eg. fc2)
$arch is set to the architecture within this section context
$nick is set to $dist-$arch within this section context
$repo is set to the current repo-name within this repo context
-Depo can use several types of protocols or URL identifiers:
+mrepo can use several types of protocols or URL identifiers:
<empty> - use the directory in $srcdir/$dist-$arch/$repo
- depo:// - handled by depo, equivalent to file://$srcdir/
- file:// - handled by depo, symlink to other directory containing RPMS
+ mrepo:// - handled by mrepo, equivalent to file://$srcdir/
+ file:// - handled by mrepo, symlink to other directory containing RPMS
fish:// - handled by lftp
ftp:// - handled by mirrordir or lftp
http:// - handled by lftp
View
24 docs/verbosity.txt
@@ -1,31 +1,31 @@
-How to make Depo more (or less) verbose
-=======================================
+How to make mrepo more (or less) verbose
+========================================
-Depo has 2 options to influence what it prints.
+mrepo has 2 options to influence what it prints.
-q, --quiet minimal output
-v, --verbose increase verbosity
-vv, -vvv, -vvvv.. increase verbosity more
-To make Depo only print essential messages (but be quiet when everything
+To make mrepo only print essential messages (but be quiet when everything
is ok), use -q/--quiet
-To make Depo report more about what it is doing, you can provide -v multiple
+To make mrepo report more about what it is doing, you can provide -v multiple
times. Here's what it means:
options level description
""""""" """"" """""""""""
-q 0 be quiet if no problems
- (no options) 1 print depo progress (normal)
- -v 2 print depo progress (detailed)
- -vv 3 print depo progress (detailed) + print helper-program output (normal)
- -vvv 4 print depo progress (detailed) + print helper-program output (detailed)
- -vvvv 5 print depo progress (debug) + print helper-program output (detailed)
- -vvvvv 6 print depo progress (debug) + print helper-program output (debug)
+ (no options) 1 print mrepo progress (normal)
+ -v 2 print mrepo progress (detailed)
+ -vv 3 print mrepo progress (detailed) + print helper-program output (normal)
+ -vvv 4 print mrepo progress (detailed) + print helper-program output (detailed)
+ -vvvv 5 print mrepo progress (debug) + print helper-program output (detailed)
+ -vvvvv 6 print mrepo progress (debug) + print helper-program output (debug)
Not all helper-programs have options to increase verbosity or enable debugging.
-Currently it is not possible to have Depo (or its tools) print out what files
+Currently it is not possible to have mrepo (or its tools) print out what files
are new and what files have been deleted. It's hard to do this tool-independent,
though there are other implementations that are possible (inotify,
directory-listing).
View
22 docs/webserver-configuration.txt
@@ -1,32 +1,32 @@
-How to configure you Web server for Depo
-========================================
+How to configure you Web server for mrepo
+=========================================
If you have apache, this package should already have done a
-good job by installing the default Depo configuration file as:
+good job by installing the default mrepo configuration file as:
- /etc/httpd/conf.d/depo.conf
+ /etc/httpd/conf.d/mrepo.conf
Now, you probably want to change the default to prevent people
-from accessing your Depo website, or because you have another
+from accessing your mrepo website, or because you have another
domain-name or simply because you don't want the generic
-/depo/-Alias.
+/mrepo/-Alias.
The config file provided is just a default that helps to set
up your initial environment and it is there to be adapted.
-It uses by default the hostname 'depo' and if you define 'depo'
+It uses by default the hostname 'mrepo' and if you define 'mrepo'
as a name on your local network, it may work without change.
For browsing and remote network installations via HTTP the
webserver can be accessed at:
- http://localhost/depo/
+ http://localhost/mrepo/
or
- http://depo/
+ http://mrepo/
If you want to enable HTTP authentication to prevent people
-accessing your Depo repository, look at
+accessing your mrepo repository, look at
- /etc/httpd/conf.d/depo.conf
+ /etc/httpd/conf.d/mrepo.conf
And adapt to your needs. More information about HTTP
authentication and Apache can be found at:
View
2 gensystemid
@@ -101,7 +101,7 @@ class Options:
print 'gensystemid: Architecture not supplied, using system architecture %s' % self.arch
if not self.hostname:
- self.hostname = '%s-%s-%s-depo' % (os.uname()[1].split('.')[0], self.rhnrelease, lowarch(self.arch))
+ self.hostname = '%s-%s-%s-mrepo' % (os.uname()[1].split('.')[0], self.rhnrelease, lowarch(self.arch))
try:
checkrelease(self.rhnrelease, self.arch)
View
4 html/HEADER.index.shtml
@@ -1,6 +1,6 @@
-<h1>Depo RPM Mirror on <!--#echo var="SERVER_NAME" --> (<!--#echo var="SERVER_ADDR" -->)</h1>
+<h1>mrepo RPM Mirror on <!--#echo var="SERVER_NAME" --> (<!--#echo var="SERVER_ADDR" -->)</h1>
-The subdirectories below are created and managed by <b>Depo</b>. They contain
+The subdirectories below are created and managed by <b>mrepo</b>. They contain
RPM repositories for use with Smart, up2date, Apt and Yum, directories to
allow for remote network installs, as well as ISO files for people to
download and burn to disc.
View
4 html/HEADER.repo.shtml
@@ -1,4 +1,4 @@
-<h2>Depo RPM Mirror of <!--#include virtual=".title" --></h2>
+<h2>mrepo RPM Mirror of <!--#include virtual=".title" --></h2>
<!-- <b><!--#include virtual=".timestamp" --></b> -->
<u>Network installation</u>: Select "HTTP installation method" &raquo; "<!--#echo var="SERVER_NAME" -->" &raquo; "<!--#echo var="REQUEST_URI" -->" during installation<br>
@@ -15,4 +15,4 @@
<!-- The configuration of this Yum repository is:
<nobr><b>baseurl=http://<!--#echo var="SERVER_NAME" --><!--#echo var="REQUEST_URI" -->RPMS.<i>&lt;repo&gt;</i></b></nobr><br> -->
-<!-- For more information see the <b>Depo</b> documentation or the <a href="http://dag.wieers.com/home-made/depo/"><b>Depo</b> website</a>. -->
+<!-- For more information see the <b>mrepo</b> documentation or the <a href="http://dag.wieers.com/home-made/mrepo/"><b>mrepo</b> website</a>. -->
View
2 html/README.index.shtml
@@ -1,3 +1,3 @@
<!-- <!--#echo var="SERVER_SOFTWARE" --> at <!--#echo var="SERVER_NAME" --> Port <!--#echo var="SERVER_PORT" --><br> -->
-<b>Powered by <a href="http://dag.wieers.com/home-made/depo/">Depo</a>.</b>
+<b>Powered by <a href="http://dag.wieers.com/home-made/mrepo/">mrepo</a>.</b>
Written by <a href="http://dag.wieers.com/">Dag Wieers</a>.
View
2 html/README.repo.shtml
@@ -1,4 +1,4 @@
<!-- <!--#echo var="SERVER_SOFTWARE" --> at <!--#echo var="SERVER_NAME" --> Port <!--#echo var="SERVER_PORT" --><br> -->
-<b>Powered by <a href="http://dag.wieers.com/home-made/depo/">Depo</a>.</b>
+<b>Powered by <a href="http://dag.wieers.com/home-made/mrepo/">mrepo</a>.</b>
Written by <a href="http://dag.wieers.com/">Dag Wieers</a>.
Repository updated on <!--#flastmod file=".title" -->
View
84 mrepo
@@ -45,7 +45,7 @@ for scheme in ('rhn', 'rhns'):
class Options:
def __init__(self, args):
- self.configfile = '/etc/depo.conf'
+ self.configfile = '/etc/mrepo.conf'
self.dists = []
self.rhnrelease = None
self.force = False
@@ -64,14 +64,14 @@ class Options:
('config=', 'dist=', 'dryrun', 'force', 'generate', 'help', 'quiet', 'repo',
'remount', 'type=', 'umount', 'unmount', 'update', 'verbose', 'version', 'extras'))
except getopt.error, exc:
- print 'depo: %s, try depo -h for a list of all the options' % str(exc)
+ print 'mrepo: %s, try mrepo -h for a list of all the options' % str(exc)
sys.exit(1)
for opt, arg in opts:
if opt in ('-c', '--config'):
self.configfile = os.path.abspath(arg)
elif opt in ('-d', '--dist'):
- print 'depo: the use of -d or --dist as an option is deprecated, use the argument list'
+ print 'mrepo: the use of -d or --dist as an option is deprecated, use the argument list'
self.dists = self.dists + arg.split(',')
elif opt in ('-f', '--force'):
self.force = True
@@ -102,11 +102,11 @@ class Options:
self.version()
sys.exit(0)
elif opt in ('-x', '--extras'):
- print 'depo: the use of -x or --extras is deprecated, use -u and -r instead'
+ print 'mrepo: the use of -x or --extras is deprecated, use -u and -r instead'
self.update = True
if not self.types:
- self.types = ['file', 'fish', 'ftp', 'http', 'https', 'mc', 'rhn', 'rhns', 'rsync', 'sftp', 'depo']
+ self.types = ['file', 'fish', 'ftp', 'http', 'https', 'mc', 'rhn', 'rhns', 'rsync', 'sftp', 'mrepo']
for arg in args:
self.dists = self.dists + arg.split(',')
@@ -119,7 +119,7 @@ class Options:
print 'Using configfile %s' % self.configfile
def version(self):
- print 'depo %s' % VERSION
+ print 'mrepo %s' % VERSION
print 'Written by Dag Wieers <dag@wieers.com>'
print
print 'platform %s/%s' % (os.name, sys.platform)
@@ -128,15 +128,15 @@ class Options:
print 'build revision $Rev$'
def usage(self):
- print 'usage: depo [options] dist1 [dist2-arch ..]'
+ print 'usage: mrepo [options] dist1 [dist2-arch ..]'
def help(self):
print '''Set up a distribution server from ISO files
-Depo options:
+mrepo options:
-c, --config=file specify alternative configfile
-f, --force force repository generation
- -g, --generate generate Depo repositories
+ -g, --generate generate mrepo repositories
-n, --dry-run show what would have been done
-q, --quiet minimal output
-r, --repo=repo1,repo2 restrict action to specific repositories
@@ -151,18 +151,18 @@ class Config:
def __init__(self):
self.read(op.configfile)
- self.cachedir = self.getoption('main', 'cachedir', '/var/cache/depo')
- self.lockdir = self.getoption('main', 'lockdir', '/var/cache/depo')
- self.confdir = self.getoption('main', 'confdir', '/etc/depo.conf.d')
- self.htmldir = self.getoption('main', 'htmldir', '/usr/share/depo/html')
+ self.cachedir = self.getoption('main', 'cachedir', '/var/cache/mrepo')
+ self.lockdir = self.getoption('main', 'lockdir', '/var/cache/mrepo')
+ self.confdir = self.getoption('main', 'confdir', '/etc/mrepo.conf.d')
+ self.htmldir = self.getoption('main', 'htmldir', '/usr/share/mrepo/html')
self.pxelinux = self.getoption('main', 'pxelinux', '/usr/lib/syslinux/pxelinux.0')
- self.srcdir = self.getoption('main', 'srcdir', '/var/depo')
- self.tftpdir = self.getoption('main', 'tftpdir', '/tftpboot/depo')
- self.wwwdir = self.getoption('main', 'wwwdir', '/var/www/depo')
- self.logfile = self.getoption('main', 'logfile', '/var/log/depo.log')
+ self.srcdir = self.getoption('main', 'srcdir', '/var/mrepo')
+ self.tftpdir = self.getoption('main', 'tftpdir', '/tftpboot/mrepo')
+ self.wwwdir = self.getoption('main', 'wwwdir', '/var/www/mrepo')
+ self.logfile = self.getoption('main', 'logfile', '/var/log/mrepo.log')
self.mailto = self.getoption('main', 'mailto', None)
- self.mailfrom = self.getoption('main', 'mailfrom', 'depo@%s' % os.uname()[1])
+ self.mailfrom = self.getoption('main', 'mailfrom', 'mrepo@%s' % os.uname()[1])
self.smtpserver = self.getoption('main', 'smtp-server', 'localhost')
self.arch = self.getoption('main', 'arch', 'i386')
@@ -519,15 +519,15 @@ class Repo:
mirrorlftp(url, self.srcdir)
elif s in ('file', ''):
mirrorfile(url, self.srcdir)
- elif s in ('depo', ):
- mirrordepo(url, self.srcdir)
+ elif s in ('mrepo', ):
+ mirrormrepo(url, self.srcdir)
elif s in ('mc', ):
mirrormirrordir(url, self.srcdir)
elif s in ('rhn', 'rhns'):
mirrorrhnget(url, self.srcdir, self.dist)
else:
error(2, 'Scheme %s:// not implemented yet (in %s)' % (s, url))
- except DepoMirrorException, e:
+ except mrepoMirrorException, e:
error(0, 'Mirroring failed for %s with message:\n %s' % (url, e.value))
exitcode = 2
if not self.url:
@@ -681,15 +681,15 @@ class Repo:
self.repoview()
elif md not in metadata:
error(0, 'The %s index is unknown.' % md)
- except DepoGenerateException, e:
+ except mrepoGenerateException, e:
error(0, 'Generating repo failed for %s with message:\n %s' % (self.name, e.value))
exitcode = 2
def repomd(self):
"Create a repomd repository"
if not cf.cmd['createrepo']:
- raise DepoGenerateException('Command createrepo is not found. Skipping.')
+ raise mrepoGenerateException('Command createrepo is not found. Skipping.')
opts = ' ' + cf.createrepooptions
if op.force:
opts = ' --pretty'
@@ -712,7 +712,7 @@ class Repo:
info(2, '%s: Create repomd repository for %s' % (self.dist.nick, self.name))
ret = run('%s %s %s' % (cf.cmd['createrepo'], repoopts, self.wwwdir))
if ret:
- raise(DepoGenerateException('%s failed with return code: %s' % (cf.cmd['createrepo'], ret)))
+ raise(mrepoGenerateException('%s failed with return code: %s' % (cf.cmd['createrepo'], ret)))
def yum(self):
"Create a (old-style) yum repository"
@@ -733,7 +733,7 @@ class Repo:
info(2, '%s: Create (old-style) yum repository for %s' % (self.dist.nick, self.name))
ret = run('%s %s -l %s' % (cf.cmd['yumarch'], opts, self.wwwdir))
if ret:
- raise(DepoGenerateException('%s failed with return code: %s' % (cf.cmd['yumarch'], ret)))
+ raise(mrepoGenerateException('%s failed with return code: %s' % (cf.cmd['yumarch'], ret)))
def apt(self):
"Create an (old-style) apt repository"
@@ -779,7 +779,7 @@ class Repo:
# else:
ret = run('%s %s --flat --bloat --bz2only --partial %s %s' % (cf.cmd['genbasedir'], opts, self.dist.dir, self.name))
if ret:
- raise(DepoGenerateException('%s failed with return code: %s' % (cf.cmd['genbasedir'], ret)))
+ raise(mrepoGenerateException('%s failed with return code: %s' % (cf.cmd['genbasedir'], ret)))
def repoview(self):
"Create a repoview index"
@@ -797,11 +797,11 @@ class Repo:
title = '%s repository for %s' % (self.name, self.dist.nick)
ret = run('%s %s --title="%s" %s' % (cf.cmd['repoview'], opts, title, self.wwwdir))
if ret:
- raise(DepoGenerateException('%s failed with return code: %s' % (cf.cmd['repoview'], ret)))
-# url = 'http://depo/%s/RPMS.%s/' % (self.dist.nick, self.name)
+ raise(mrepoGenerateException('%s failed with return code: %s' % (cf.cmd['repoview'], ret)))
+# url = 'http://mrepo/%s/RPMS.%s/' % (self.dist.nick, self.name)
# ret = run('%s %s --url="%s" %s' % (cf.cmd['repoview'], opts, url, self.wwwdir))
# if ret:
-# raise(DepoGenerateException('%s failed with return code: %s' % (cf.cmd['repoview'], ret)))
+# raise(mrepoGenerateException('%s failed with return code: %s' % (cf.cmd['repoview'], ret)))
class Set:
def __init__(self):
@@ -831,13 +831,13 @@ class Set:
def __len__(self):
return len(self.list)
-class DepoMirrorException(Exception):
+class mrepoMirrorException(Exception):
def __init__(self, value):
self.value = value
def __str__(self):
return repr(self.value)
-class DepoGenerateException(Exception):
+class mrepoGenerateException(Exception):
def __init__(self, value):
self.value = value
def __str__(self):
@@ -863,7 +863,7 @@ def writesha1(file, sha1sum=None):
def error(level, str):
"Output error message"
if level <= op.verbose:
- sys.stderr.write('depo: %s\n' % str)
+ sys.stderr.write('mrepo: %s\n' % str)
def info(level, str):
"Output info message"
@@ -976,7 +976,7 @@ def symlink(src, dst):
elif os.path.isfile(dst):
if os.path.samefile(src, dst):
return
- os.rename(dst, dst+'.depobak')
+ os.rename(dst, dst+'.mrepobak')
### Not using filecmp increases speed with 15%
# if os.path.isfile(dst) and filecmp.cmp(src, dst) == 0:
@@ -1071,7 +1071,7 @@ def mirrorrsync(url, path):
ret = run('%s %s %s %s' % (cf.cmd['rsync'], opts, url, path), dryrun=True)
if ret:
- raise(DepoMirrorException('Failed with return code: %s' % ret))
+ raise(mrepoMirrorException('Failed with return code: %s' % ret))
def mirrormirrordir(url, path):
"Mirror everything from a ftp:// or mc:// URL"
@@ -1097,7 +1097,7 @@ def mirrormirrordir(url, path):
ret = run("%s %s '%s' '%s'" % (cf.cmd['mirrordir'], opts, url, path), dryrun=True)
if ret:
- raise(DepoMirrorException('Failed with return code: %s' % ret))
+ raise(mrepoMirrorException('Failed with return code: %s' % ret))
def mirrorlftp(url, path):
@@ -1133,7 +1133,7 @@ def mirrorlftp(url, path):
ret = run('%s %s -c \'%s mirror %s %s %s\'' % (cf.cmd['lftp'], opts, cmds, mirroropts, url, path), dryrun=True)
if ret:
- raise(DepoMirrorException('Failed with return code: %s' % ret))
+ raise(mrepoMirrorException('Failed with return code: %s' % ret))
def mirrorfile(url, path):
"Mirror everything from a file:// URL by symlinking"
@@ -1151,9 +1151,9 @@ def mirrorfile(url, path):
# if os.path.isfile(iso):
# print 'Please mount %s to %s' % (iso, path)
-def mirrordepo(url, path):
- "Mirror everything from a local Depo mirror by symlinking"
- pathname = url.replace('depo://', '')
+def mirrormrepo(url, path):
+ "Mirror everything from a local mrepo mirror by symlinking"
+ pathname = url.replace('mrepo://', '')
basename = os.path.basename(url)
symlink(os.path.join(cf.srcdir, pathname), os.path.join(path, basename))
@@ -1197,7 +1197,7 @@ def mirrorrhnget(url, path, dist):
ret = run("%s %s '%s' '%s'" % (cf.cmd['rhnget'], opts, url, path), dryrun=True)
if ret:
- raise(DepoMirrorException('Failed with return code: %s' % ret))
+ raise(mrepoMirrorException('Failed with return code: %s' % ret))
def hardlink(srcdir):
info(1, 'Hardlinking duplicate packages in %s.' % srcdir)
@@ -1250,7 +1250,7 @@ def mail(subject, msg):
import smtplib
smtp = smtplib.SMTP(cf.smtpserver)
# server.set_debuglevel(1)
- msg = 'Subject: [depo] %s\n\n%s' % (subject, msg)
+ msg = 'Subject: [mrepo] %s\n\n%s' % (subject, msg)
for email in cf.mailto.split():
smtp.sendmail(cf.mailfrom, email, 'To: %s\n%s' % (email, msg))
smtp.quit()
@@ -1309,7 +1309,7 @@ def main():
sumnew = 0
sumremoved = 0
- msg = 'The following changes to Depo\'s repositories on %s have been made:' % os.uname()[1]
+ msg = 'The following changes to mrepo\'s repositories on %s have been made:' % os.uname()[1]
### Mounting and mirroring available distributions/repositories
for dist in dists:
View
68 mrepo.spec
@@ -1,19 +1,19 @@
-# $Id: depo.spec 2103 2004-08-26 10:38:07Z dag $
+# $Id: mrepo.spec 2103 2004-08-26 10:38:07Z dag $
# Authority: dag
# Upstream: Dag Wieers <dag$wieers,com>
Summary: Tool to set up a Yum/Apt mirror from various sources (ISO, RHN, rsync, http, ftp, ...)
-Name: depo
+Name: mrepo
Version: 0.8.3svn
Release: 1
License: GPL
Group: System Environment/Base
-URL: http://dag.wieers.com/home-made/depo/
+URL: http://dag.wieers.com/home-made/mrepo/
Packager: Dag Wieers <dag@wieers.com>
Vendor: Dag Apt Repository, http://dag.wieers.com/apt/
-Source: http://dag.wieers.com/home-made/depo/depo-%{version}.tar.bz2
+Source: http://dag.wieers.com/home-made/mrepo/mrepo-%{version}.tar.bz2
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
BuildArch: noarch
@@ -22,7 +22,7 @@ Requires: python >= 2.0, createrepo
Obsoletes: yam <= %{version}
%description
-Depo builds a local Apt/Yum RPM repository from local ISO files,
+mrepo builds a local Apt/Yum RPM repository from local ISO files,
downloaded updates and extra packages from RHN and 3rd party
repositories.
@@ -31,32 +31,32 @@ the repository structure and meta-data, enables HTTP access to
the repository and creates a directory-structure for remote
network installations using PXE/TFTP.
-Depo supports ftp, http, sftp, rsync, rhn and other download methods.
+mrepo supports ftp, http, sftp, rsync, rhn and other download methods.
-With Depo, you can enable your laptop or a local server to provide
+With mrepo, you can enable your laptop or a local server to provide
updates for the whole network and provide the proper files to
allow installations via the network.
%prep
%setup
-%{__perl} -pi.orig -e 's|^(VERSION)\s*=\s*.+$|$1 = "%{version}"|' depo
+%{__perl} -pi.orig -e 's|^(VERSION)\s*=\s*.+$|$1 = "%{version}"|' mrepo
-%{__cat} <<EOF >config/depo.cron
-### Enable this if you want Depo to daily synchronize
+%{__cat} <<EOF >config/mrepo.cron
+### Enable this if you want mrepo to daily synchronize
### your distributions and repositories at 2:30am.
-#30 2 * * * root /usr/bin/depo -q -ug
+#30 2 * * * root /usr/bin/mrepo -q -ug
EOF
-%{__cat} <<EOF >config/depo.conf
-### Configuration file for Depo
+%{__cat} <<EOF >config/mrepo.conf
+### Configuration file for mrepo
-### The [main] section allows to override Depo's default settings
-### The depo-example.conf gives an overview of all the possible settings
+### The [main] section allows to override mrepo's default settings
+### The mrepo-example.conf gives an overview of all the possible settings
[main]
-srcdir = /var/depo
-wwwdir = /var/www/depo
-confdir = /etc/depo.conf.d
+srcdir = /var/mrepo
+wwwdir = /var/www/mrepo
+confdir = /etc/mrepo.conf.d
arch = i386
mailto = root@localhost
@@ -65,7 +65,7 @@ smtp-server = localhost
#rhnlogin = username:password
### Any other section is considered a definition for a distribution
-### You can put distribution sections in /etc/depo.conf.d/
+### You can put distribution sections in /etc/mrepo.conf.d/
### Examples can be found in the documentation at:
### %{_docdir}/%{name}-%{version}/dists/.
EOF
@@ -78,35 +78,35 @@ EOF
%preun
if [ $1 -eq 0 ]; then
- /service depo stop &>/dev/null || :
- /sbin/chkconfig --del depo
+ /service mrepo stop &>/dev/null || :
+ /sbin/chkconfig --del mrepo
fi
%post
-/sbin/chkconfig --add depo
+/sbin/chkconfig --add mrepo
#%postun
-#/sbin/service depo condrestart &>/dev/null || :
+#/sbin/service mrepo condrestart &>/dev/null || :
%clean
%{__rm} -rf %{buildroot}
%files
%defattr(-, root, root, 0755)
%doc AUTHORS ChangeLog COPYING README THANKS TODO WISHLIST config/* docs/
-%config(noreplace) %{_sysconfdir}/cron.d/depo
-%config(noreplace) %{_sysconfdir}/httpd/conf.d/depo.conf
-%config(noreplace) %{_sysconfdir}/logrotate.d/depo
-%config(noreplace) %{_sysconfdir}/depo.conf
-%config(noreplace) %{_sysconfdir}/depo.conf.d/
-%config %{_initrddir}/depo
+%config(noreplace) %{_sysconfdir}/cron.d/mrepo
+%config(noreplace) %{_sysconfdir}/httpd/conf.d/mrepo.conf
+%config(noreplace) %{_sysconfdir}/logrotate.d/mrepo
+%config(noreplace) %{_sysconfdir}/mrepo.conf
+%config(noreplace) %{_sysconfdir}/mrepo.conf.d/
+%config %{_initrddir}/mrepo
%{_bindir}/gensystemid
%{_bindir}/rhnget
-%{_bindir}/depo
-%{_datadir}/depo/
-%{_localstatedir}/cache/depo/
-%{_localstatedir}/www/depo/
-%{_localstatedir}/depo/
+%{_bindir}/mrepo
+%{_datadir}/mrepo/
+%{_localstatedir}/cache/mrepo/
+%{_localstatedir}/www/mrepo/
+%{_localstatedir}/mrepo/
%changelog
* Sun Oct 22 2006 Dag Wieers <dag@wieers.com> - 0.8.3svn-1
View
2 rhnget
@@ -249,7 +249,7 @@ def rhnlogin(url, path, force=False):
cfg['proxyPassword'] = ''
cfg["sslCACert"] = '/usr/share/rhn/RHNS-CA-CERT'
- ### Override the version if forced in Depo configuration (to allow single systemid usage)
+ ### Override the version if forced in mrepo configuration (to allow single systemid usage)
if op.rhnrelease:
cfg['versionOverride'] = op.rhnrelease
else:
View
24 setup.py
@@ -30,23 +30,23 @@
from distutils.core import setup
setup(
- name = 'depo',
+ name = 'mrepo',
version = '0.8.4svn',
description = 'RPM repository mirroring tool',
author = 'Dag Wieers',
author_email ='dag@wieers.com',
- url = "http://dag.wieers.com/home-made/depo/",
- scripts=['depo', 'gensystemid'],
+ url = "http://dag.wieers.com/home-made/mrepo/",
+ scripts=['mrepo', 'gensystemid'],
data_files=[
- ('/etc', ['config/depo.conf']),
- ('/etc/init.d', ['config/depo']),
- ('/etc/httpd/conf.d', ['config/httpd/depo.conf']),
- ('/var/cache/depo', []),
- ('/var/www/depo', []),
- ('/var/depo/all/local', []),
- ('/usr/share/depo/html', ['html/HEADER.index.shtml', 'html/HEADER.repo.shtml', 'html/README.index.shtml', 'html/README.repo.shtml']),
+ ('/etc', ['config/mrepo.conf']),
+ ('/etc/init.d', ['config/mrepo']),
+ ('/etc/httpd/conf.d', ['config/httpd/mrepo.conf']),
+ ('/var/cache/mrepo', []),
+ ('/var/www/mrepo', []),
+ ('/var/mrepo/all/local', []),
+ ('/usr/share/mrepo/html', ['html/HEADER.index.shtml', 'html/HEADER.repo.shtml', 'html/README.index.shtml', 'html/README.repo.shtml']),
],
- download_url = 'http://dag.wieers.com/home-made/depo/depo-0.8.1.tar.gz',
+ download_url = 'http://dag.wieers.com/home-made/mrepo/mrepo-0.8.4svn.tar.gz',
license = 'GPL',
platforms = 'Posix',
classifiers = [
@@ -59,7 +59,7 @@
'System :: Systems Administration',
],
long_description = '''
-Depo builds a local APT/Yum RPM repository from local ISO files, downloaded
+mrepo builds a local APT/Yum RPM repository from local ISO files, downloaded
updates, and extra packages from RHN (Red Hat Network) and 3rd party
repositories. It takes care of setting up the ISO files, downloading the
RPMs, configuring HTTP access, and providing PXE/TFTP resources for remote

0 comments on commit 61777b3

Please sign in to comment.
Something went wrong with that request. Please try again.