Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=pacman-tools.git;a=commitdiff;h=7c879d8b78db6e8f186242d3a5c25ab384c15838

commit 7c879d8b78db6e8f186242d3a5c25ab384c15838
Author: VMiklos <[EMAIL PROTECTED]>
Date:   Sun Sep 30 02:25:11 2007 +0200

repoman: remove internal help, the manpage is more up to date
also add a --version switch

diff --git a/repoman b/repoman
index 3261ca5..4878460 100755
--- a/repoman
+++ b/repoman
@@ -4,27 +4,9 @@
# repoman for Frugalware
# distributed under GPL License

-function usage()
+usage()
{
-       cat <<EOF
-Usage: `basename $0` [global options] [command] [command options]
-
-Commands:
-cl|changelog [category/]package             Generate a Changelog file.
-c|clean package                             Delete a package.
-del|delete file                             Delete a file from FST.
-ls|list directory                           List a directory in FST.
-rec|record [parameters]                     Record a package.
-up|upload source destination                Upload a file to FST.
-push [record parameters]                    Push a package.
-fpmmerge repo                               Merge fpms from another repo.
-
-Global options:
--d|--dry-run  Don't actually run the commands.
--k            Don't be interactive
--v|--verbose  Give verbose output.
--h|--help     Show this help screen.
-EOF
+       man repoman
}

msg()
@@ -600,7 +582,7 @@ if [ -e FrugalBuild ]; then
fi

# Initializating variables.
-version='0.3.0'
+version='0.3.1'
[ -z "$arch" ] && arch=`uname -m`

if [ "$F_makepkg_scm" = "git" ]; then
@@ -638,6 +620,10 @@ while [ "$1" != "" ]; do
-v|--verbose)
verbose=1
;;
+               --version)
+                       echo repoman $version
+                       exit 0
+               ;;
-t|--tree)
shift 1
reponame=$1
diff --git a/repoman.1 b/repoman.1
deleted file mode 100644
index 66b81f6..0000000
--- a/repoman.1
+++ /dev/null
@@ -1,400 +0,0 @@
-.TH "REPOMAN" "1" "June 2007" "Frugalware 0.7" "pacman-tools"
-.SH NAME
-repoman \- Frugalware's program to maintain/build packages via ssh/rsync
-.SH SYNOPSIS
-\fBrepoman\fR [\fIglobal options\fR] [\fIcommand\fR] [\fIcommand options\fR]
-.SH DESCRIPTION
-.BR repoman
-is meant for Frugalware developers to upload, delete or register source
-tarballs or fpm packages.
-
-Also it's a tool for users to automatically build and install packages on the
-target host.
-
-.SH INSTALLING PACKAGES
-.BR Note:
-This section is for users. If you're a developer, just skip it.
-
-Here is a reference comparing pacman-g2 and repoman
-
-.nf
-pacman-g2 -Sy          repoman upd
-pacman-g2 -S pkg       repoman merge pkg
-pacman-g2 -Ss foo      repoman search foo
-.fi
-
-There is a possibility to alter the result of the merge without editing the
-buildscript for some packages. To build the development version of a package,
-type:
-
-.nf
-USE_DEVEL=y repoman merge pkg
-.fi
-
-.SH USAGE
-.BR Note:
-This section is for developers. If you're a user, just skip it.
-
-A typical package update should be done as follows:
-
-.TP
-0) Configure repoman:
-
-.nf
-echo 'current_servers=("[EMAIL PROTECTED]:/home/ftp/pub/frugalware/\\
-frugalware-current")' > ~/.repoman.conf
-echo 'fst_root=~/git' >> ~/.repoman.conf
-.fi
-
-Replace foo with your nick and make sure about you have the git tree in
-~/git/current.
-
-If you want to use more than one (conflicting, ie.: current and stable) trees,
-then please add the <reponame>_pushonly=y option to each repo except one.
-Example: if the host system is -current and you want to enabled current and
-stable, then add stable_pushonly="y" to your config.
-
-.TP
-1) Get the repo and set defaults.
-
-Example for the first time:
-
-.nf
-git clone [EMAIL PROTECTED]:/home/ftp/pub/frugalware/frugalware-current \\
-current
-.fi
-
-( Example for the pacman-tools repo:
-
-git clone [EMAIL PROTECTED]:/home/ftp/pub/other/pacman-tools/pacman-tools )
-
-.nf
-cd current
-git config user.name yourname
-git config user.email [EMAIL PROTECTED]
-git config remote.origin.receivepack "sudo -u foo git-receive-pack"
-.fi
-
-Here you should substitute foo with the nick of the repo owner, currently 
vmiklos.
-
-.TP
-2) Update the repo.
-
-If you already got the repo a simple 'git pull' should be enough.
-
-.TP
-3) Make changes and build the package.
-
-Now time to edit the FrugalBuild and make changes.
-
-Build the package with 'sudo makepkg -c'.
-
-Then if you would like to add new file(s) to the source, run this:
-
-git add glibc.install
-
-To remove file(s) from the source, run this:
-
-git rm at-3.1.8r11-makefile.patch
-
-Or if you would like to rename a file in the source, run this:
-
-git mv glibc-2.5-foo.patch glibc-2.5-bar.patch
-
-.TP
-4) Recording the changes.
-
-Simply run 'git commit'.
-
-When recording the patch (if this is a package upgrade), the first line must be
-$pkgname-$pkgver-$pkgrel-$arch. You can use repoman rec which will fill in this
-first line automatically for you.
-
-For example:
-
-glibc-2.5-1-i686
-
-This is the same as the full package name without trailing .fpm.
-
-.TP
-5) Delete the old source package(s).
-
-If you only do a rebuild, then, of course, skip this step. For example:
-
-repoman del source/base/readline/readline-5.0.tar.gz
-
-.TP
-6) Push the FrugalBuild/.install/etc patch.
-
-Here you only have to do a simple 'git push'.
-
-This command uploads the changes you made locally to the server.
-
-.TP
-7) Upload the new source package(s).
-
-If you only do a rebuild, then, of course, skip this step.
-
-For example:
-
-repoman up zsh-4.2.5.tar.bz2 /source/apps/zsh/
-
-repoman up zsh-doc-4.2.5.tar.bz2 /source/apps/zsh/
-
-NOTE: if the original mirror is fast, then just skip this step and repoman cl
-(see later) will download the sources for you. If the mirror is slower than
-your upload bandwidth then it worth to upload it now or you'll have to wait
-till the server downloads it!
-
-.TP
-8) Upload the new fpm package:
-
-For example (see the 'up' command description for more details!):
-
-repoman up sendmail-8.13.4-2-i686.fpm frugalware-i686/
-
-.TP
-9) Delete the old fpm package.
-
-For example:
-
-repoman del frugalware-i686/glibc-2.5-1-i686.fpm
-
-.TP
-10) Generate a Changelog, update the .fdb and sql database, download the
-missing sources and update documentation:
-
-For example:
-
-repoman cl perl
-
-.TP
-11) Once you understand this procedure, you can do all this at once:
-
-For example:
-
-repoman -k push
-
-Will be interactive only in case there is some unrecorded change.
-
-Usually I (vmiklos) use the following:
-
-.nf
-repoman rec
-repoman -k push
-.fi
-
-But you should not use repoman push till you don't understand what it does!
-
-.SH WIP REPOS
-
-1) Introduction
-
-WIP stands for "Work In Progress". Such repos are used usually only for a few
-days or weeks, if you except that a package upgrade will break several others,
-then it's good to create a WIP repo, and merge when you fixed all the revdeps.
-
-2) Before you begin
-
-If the repo you use for your work already exists, it may need some work:
-
-* Remove the already merged fpms manually. This usually means all fpms.
-
-* Remove the obsolete entries from the fdb, or just remove the file if no fpms 
left in the repo.
-
-3) The How
-
-Choose a name. It should not have to be too meaningful, using anything other
-than a-z 0-9 and underscore may or may not work. For "flac 1.1.3" I have used
-flac113.
-
-First, clone current to your personal directory on genesis:
-
-.nf
-cd /home/ftp/pub/other/people/nick
-git clone /home/ftp/pub/frugalware/frugalware-current
-mv frugalware-current flac113
-mkdir flac113/frugalware-$arch
-.fi
-
-You \fBneed\fP hooks. You have two choices. If you want the standard required +
-cia + mailing list combo, then:
-
-.nf
-ln -sf /home/ftp/pub/other/git-hooks/git-hooks.py .git/hooks/post-receive
-.fi
-
-Otherwise just do:
-
-.nf
-echo "unset GIT_DIR; cd ..; git checkout -f" > .git/hooks/post-receive
-.fi
-
-Then
-
-.nf
-chmod +x .git/hooks/post-receive
-.fi
-
-This is necessary to update the working directory after a push, so that repoman
-cl will see the updated FrugalBuild.
-
-To workaround a git bug:
-
-.nf
-rm -rf .git/refs/remotes
-.fi
-
-Also edit .git/config and remove the section named 'origin'.
-
-Okay now you can git clone your repo to localhost:
-
-.nf
-git clone [EMAIL PROTECTED]:/home/ftp/pub/other/people/nick/flac113
-.fi
-
-Now you have to configure repoman and pacman-g2.
-
-Just append your ~/.repoman.conf:
-
-.nf
-repos=([EMAIL PROTECTED] 'flac113')
-flac113_servers=("[EMAIL PROTECTED]:/home/ftp/pub/other/people/nick/flac113")
-.fi
-
-And create a file named /etc/pacman.d/flac113:
-
-.nf
-[flac113]
-Server = 
http://ftp.frugalware.org/pub/other/people/nick/flac113/frugalware-$arch/
-.fi
-
-Building a package will be a bit more complicated than sudo makepkg -c, so
-let's create an alias:
-
-.nf
-alias flacbuild='sudo makepkg -t flac113,current -c'
-.fi
-
-Then you can build with:
-
-.nf
-flacbuild
-.fi
-
-You can record using:
-
-.nf
-repoman rec
-.fi
-
-and push with:
-
-.nf
-repoman -t flac113 -k push
-.fi
-
-4) Merge
-
-Once you are ready, go to ~/git/current (make sure you don't have anything to
-push!) and
-
-.nf
-git pull [EMAIL PROTECTED]:/home/ftp/pub/other/people/nick/flac113
-.fi
-
-This will merge your WIP repo to your local current repo. If there are
-conflicts, resolve them.
-
-Push your changes:
-
-.nf
-git push
-.fi
-
-Finally you need to transfer the fpms from your repo and run a repoman cl for 
each package:
-
-.nf
-repoman fpmmerge flac113
-.fi
-
-.SH COMMANDS
-.TP
-.BI cl|changelog " [category/]package"
-Generate a Changelog file from git log.
-The category may be optional, but then a FrugalBuild must be supplied in the
-current directory to determine the category.
-.TP
-.BI c|clean " package"
-Wipes out a package from the package database (fdb).
-.TP
-.BI del|delete " file"
-Delete a file from a repo.
-
-Example: repoman del frugalware-i686/glibc-2.5-1-i686.fpm
-.TP
-.BI ls|list " directory [options]"
-List the contents of a remote directory.
-
-Example: repoman ls source/base/db/ -l
-.TP
-.BI m|merge " package"
-Build a package from source and install it. You can configure the build
-options in the makepkg_opts directive of /etc/repoman.conf.
-
-By default repoman will install the missing dependencies with pacman-g2, clean 
up
-the leftover work files, install the package, and write the resulting package
-to the pacman-g2 package cache.
-
-.TP
-.BI rec|record " [parameters]"
-A frontend to git commit. If parameters are given then it won't be interactive
-and the parameters are appended to the history as a long comment.
-
-.TP
-.BI up|upload " source destination"
-Upload a file to a repo.
-
-Example: repoman up sendmail-8.13.4-2-i686.fpm frugalware-i686/
-.TP
-.BI upd|update
-Update the repos listed in /etc/repoman.conf. If a repo does not
-exist yet, then repoman will download it (it may take some time!).
-If you want to blacklist a repo then add <reponame>_pushonly="y" to
-/etc/repoman.d/<reponame>.
-
-.TP
-.BI s|search " [regexp]"
-Search in those FrugalBuilds which are only available in source form. If the
-optional regexp parameter omitted, it will list all source-only packages.
-
-.SH OPTIONS
-.TP
-.B -d|--dry-run
-Don't execute the commands in fact.
-.TP
-.B -h|--help
-Show the help screen.
-.TP
-.B -v|--verbose
-Give verbose output.
-.TP
-.B -t|--tree
-Specify the source tree to use (ie. "current" or "stable", or 
"my_custom_repo").
-.TP
-.B -k
-Don't be interactive.
-.SH ENVIRONMENT
-\fBrepoman\fR utilizes the following environment variable:
-.PP
-.Vb 2
-
-arch                         Update different architecture of the .fdb
-                             than repoman is running on.
-.SH AUTHORS
-Written by Miklos Vajna and Laszlo Dvornik.
-.SH "REPORTING BUGS"
-Please report bugs to the <http://bugs.frugalware.org/> bug tracking system.
-.SH "SEE ALSO"
-.BR git (7),
-.BR pacman-g2 (8)
_______________________________________________
Frugalware-git mailing list
[email protected]
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to