summaryrefslogtreecommitdiff
path: root/scripts
Commit message (Collapse)AuthorAge
* pacman-optimize: ensure database directory contains local/Dan McGee2010-12-12
| | | | | | And also default dbpath to the one we may find in pacman.conf. Signed-off-by: Dan McGee <dan@archlinux.org>
* Add script to update pacman database formatAllan McRae2010-12-12
| | | | | | | | | | | The pacman-db-upgrade script was added to detect old pacman database formats and upgrade them. Currently performs the merging of depends files into desc files in the local database. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: perform sanity checks on variables in package functionsAllan McRae2010-12-12
| | | | | | | Check the over-ridden entries for provides, backup, optdepends and options for illegal entries. Partially fixes FS#16004. Signed-off-by: Allan McRae <allan@archlinux.org>
* makepkg: remove dead code from handle_depsAndres P2010-12-12
| | | | | | | | | | The error message that has been removed never gets to print because, given the same condition, handle_deps throws the same error and then immediately exits makepkg. Signed-off-by: Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: do not ignore errors from pacman when checking depsAndres P2010-12-12
| | | | | | | | | | | | As check_deps is run in a subshell, exit had the same meaning as return. Since the intention is to halt makepkg when pacman throws an error other than 127, the enclosing function has to handle error control instead. Fixes FS#19840 Signed-off-by: Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: use portable escape sequence for terminal escapesCarlos Diaz2010-12-12
| | | | | | | | | | | | The escape string isn't necesarily \033; it's determined by what the particular termcap/info entry for that terminal contains. Bash uses ncurses functions to expand \e to the _correct_ terminal escape. Signed-off-by: Carlos Diaz <839273@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* Add epoch verification to makepkgDan McGee2010-10-13
| | | | | | If defined, it must be an integer. Signed-off-by: Dan McGee <dan@archlinux.org>
* Make repo-add and makepkg epoch-awareDan McGee2010-10-13
| | | | | | | | | | Allow it to be a variable in the PKGBUILD as well as propagating it through to the built package and the package database. We leave some backward compatibility in place by placing the '%FORCE%' option in the database if the package contains an epoch; this will be used by older versions of pacman and more or less ignored by versions that use epoch. Signed-off-by: Dan McGee <dan@archlinux.org>
* Fix bash shell location checkDan McGee2010-10-13
| | | | | | | | | | BASH is defined when you are actually using bash during configure, which sucks because it ends up being '/bin/sh', messing up all of our scripts. Change the name of the variable we use in configure, and also ensure we get a full path to the executable by using AC_PATH_PROGS rather than AC_CHECK_PROGS. Finally, change the variable name everywhere we use it. Signed-off-by: Dan McGee <dan@archlinux.org>
* Use sysconfdir, localstatedir, BASH instead of hardcoded valuesNezmer2010-10-11
| | | | | | | | | This applies to contrib/ files, our scripts, and the documentation. Dan: fix 'make clean' in contrib/ directory. Signed-off-by: Nezmer <git@nezmer.info> Signed-off-by: Dan McGee <dan@archlinux.org>
* repo-add: more informative delta messagesXavier Chantry2010-10-11
| | | | | | | | | - Print an error if database entry was not found and delta entry cannot be added - More informative line when delta entry is added (oldfile -> newfile) Signed-off-by: Xavier Chantry <chantry.xavier@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
* repo-add: add delta generationXavier Chantry2010-10-11
| | | | | | | | | This allows deltas to be generated at repo-add invocation time as opposed to just added to the database. It will generate the delta from the package version currently in the database. Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: Use mkfifo instead of GNU-only 'mknod <file> p'Nezmer2010-10-11
| | | | | | | | | | 'mknod <file> p' is apparently GNU-only. Looking at coreutils' source code, It just calls mkfifo. This one line patch should fix makepkg logging in non-GNU systems. Signed-off-by: Nezmer <git@nezmer.info> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: canonicalize paths from environmental variablesAllan McRae2010-10-05
| | | | | | | | | | This prevents circular symlinks and weird final package locations when using commands like 'PKGDEST="." makepkg'. Fixes FS#20922. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: compare paths using bash testAllan McRae2010-10-05
| | | | | | | | | Compare paths using bash's "-ef" rather than by string tests as this takes symlinks into account. This will prevent issues similar to those in FS#20922 if (e.g.) $PKGDEST is a symlink to $startdir. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: improve srcdir check and add pkgdirAllan McRae2010-10-05
| | | | | | | | | | | | | The checking of the package for $srcdir references was overly sensitive and gave a lot of what appear to be false positives with binary files (in particular with debugging symbols kept). Restrict the search for $srcdir to non-binary files as this should still catch the majority of configuration issues the check was initially designed to catch. Also, add a similar check for $pkgdir. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: remove STRIP_DIRSAllan McRae2010-10-05
| | | | | | | | | | | | | | | For binary packages, the majority of the time used in the debugs symbol stripping process is the actual stripping of the binaries/libraries and not the testing of which files to strip. This allows more complete stripping of packages that install to "non-standard" paths that would not be generally included in makepkg.conf. Any performance hit that may be apparent for (_large_) "arch=('any')" packages can readily be avoided by disabling stripping in the PKGBUILD options array. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* repo-add: make --quiet output more quietAllan McRae2010-09-27
| | | | | | Fixes FS#20403. Signed-off-by: Allan McRae <allan@archlinux.org>
* Remove quotes in remaining bash regexesDan McGee2010-09-07
| | | | | | | | After a8dcfeccfc, Allan noted that one more regular exprssion inside makepkg also contained quotes; these should not be there for the same reason as that commit. Signed-off-by: Dan McGee <dan@archlinux.org>
* Use pipe to create compressed package instead of an intermediate tar fileJürgen Hötzel2010-08-27
| | | | | | | | | | | A pipe between tar and compression command is used. This improves performance by running tar and the compression command simultaneously. Using a pipe also reduces IO by not writing an intermediate tar file to disk. Signed-off-by: Juergen Hoetzel <juergen@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: remove trailing quote mark in regexDan McGee2010-08-27
| | | | | | | Regular expressions in bash should not be quoted. Glad this was in the documentation and I didn't have to go to #bash to ask... Signed-off-by: Dan McGee <dan@archlinux.org>
* Merge branch 'maint'Dan McGee2010-08-23
|\
| * repo-add: create relative DB symlinksDan McGee2010-08-18
| | | | | | | | | | | | | | | | | | | | As noted in FS#20498, if an absolute path is used for specifying the database when invoking repo-add, the symlink generated will point to the absolute path instead of being relative to the directory. Fix this for the two linking cases, but leave the copy untouched so that will still work. Signed-off-by: Dan McGee <dan@archlinux.org>
| * makepkg: add file to the list of needed utilitiesAllan McRae2010-08-18
| | | | | | | | | | Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
| * makepkg: check tput support before usingAllan McRae2010-08-18
| | | | | | | | | | | | | | | | Prevent makepkg aborting whe colors are enabled and the terminal does not support setting colors by tput. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* | makepkg: error out on empty optdepends entriesAllan McRae2010-08-23
| | | | | | | | | | | | | | | | | | | | If optdepends was defined with empty members, then makepkg would abort late in the package building process. Detect such cases in the check_sanity() function. Fix-provided-by: Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* | makepkg: use less local variables in check_sanityAllan McRae2010-08-23
| | | | | | | | | | | | | | Instead of declaring a new local variable for each loop in the check_sanity() function, just reuse $i. Signed-off-by: Allan McRae <allan@archlinux.org>
* | makepkg: remove unnecessary variable presence checkAllan McRae2010-08-23
| | | | | | | | | | | | | | | | | | It is unnecessary to check for a variables existence before looping over it. Extracted from patch supplied by Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* | makepkg: clarify invalid backup entry errorsAllan McRae2010-08-23
| | | | | | | | | | | | | | | | "Invalid backup entry" was not a particular helpful error message, especially when it was due to the file not being in the final package. Clarify these two messages. Signed-off-by: Allan McRae <allan@archlinux.org>
* | makepkg: less code duplication in create_packageAndres P2010-08-23
| | | | | | | | | | | | | | Combine changelog and install file creation in create_package(). Signed-off-by: Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* | makepkg: use regex to match options for privilege escalationAllan McRae2010-08-23
| | | | | | | | | | | | | | | | Eases maintanence if we need to add further options in the future. Extracted from a patch supplied by Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* | makepkg: Allow creation of uncompressed packagesThomas Bächler2010-08-08
| | | | | | | | | | | | | | When performing local testing, it may be useful to add PKGEXT='.pkg.tar' to the PKGBUILD to save time, especially with big packages. Signed-off-by: Dan McGee <dan@archlinux.org>
* | Merge branch 'maint'Dan McGee2010-07-27
|\|
| * Always treat PKGLIST as an array.Dave Reisner2010-07-27
| | | | | | | | | | | | | | | | | | Fixes repackaging issues when multiple package names are passed to the --pkg option. Signed-off-by: Dave Reisner <d@falconindy.com> Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* | Remove DBEXT usageAllan McRae2010-07-07
| | | | | | | | | | | | | | | | | | With commit 5dffef78, the repo database always has a symlink of the form reponame.db. Use that filename and let libarchive determine the compression type. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* | Merge branch 'maint'Dan McGee2010-07-02
|\| | | | | | | | | Conflicts: scripts/makepkg.sh.in
| * makepkg: fix sudo/su calling of pacmanAllan McRae2010-07-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes two issues: 1) using "sudo -l" results in excess password asking under certian configurations. Revert to the pre 3.4 behaviour of always using sudo if it is installed. 2) Properly escape the command so that that versioned dependencies, such as "foo>4", do not get treated as output redirection when using su. This also unifies the generation of the pacman line and its privilege escalation. Based on patches supplied by Andres P <aepd87@gmail.com> with minor adjustments for suitability for the maint branch. Original-work-by: Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* | makepkg: undeclared local variablesAndres P2010-07-02
| | | | | | | | | | | | | | | | | | | | | | Variables that are only meaningful within the function they are declared in are now prefixed by "local". Signed-off-by: Andres P <aepd87@gmail.com> [Allan: fix whitespace] Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* | Merge branch 'maint'Dan McGee2010-06-30
|\|
| * makepkg: try standard paths for coreutils duAllan McRae2010-06-30
| | | | | | | | | | | | | | | | | | Attempt to find "du" from coreutils in the standard paths and if not revert to the version in the users PATH. Using the full path prevents issues such as FS#19932, where a different and incompatible version of du is put earlier in the users path. Signed-off-by: Allan McRae <allan@archlinux.org>
| * makepkg: remove bash4-only parameter expansion in check_sanityAndres P2010-06-30
| | | | | | | | | | Signed-off-by: Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
| * makepkg: Only check regular files in $srcdir checkThomas Bächler2010-06-30
| | | | | | | | | | | | | | | | | | | | | | The 'grep -R' in the $srcdir check would not only grep regular files, but also devices, symlinks (that might potentially point outside of $pkgdir), pipes and so on. Use find to ensure only regular files are examined. This should fix https://bugs.archlinux.org/task/19975 Signed-off-by: Allan McRae <allan@archlinux.org>
| * repo-add: try symlink, then hardlink, then copy for DB fileDan McGee2010-06-24
| | | | | | | | | | | | | | | | | | We were seeing some issues when trying to create our new database alias using symlinks on certain filesystems (see FS#19907). Have a fallback method in place where we first try a symlink, then a hard link, then just copy the database if all else fails. Signed-off-by: Dan McGee <dan@archlinux.org>
* | makepkg: clarify aborting on packaging failureAllan McRae2010-06-30
| | | | | | | | | | | | | | | | | | When makepkg catches a command failure it currently prints "Aborting..." and exits. Clarify the reason for aborting from packaging is a failure during one of the PKGBUILDs functions. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* | Merge branch 'maint'Dan McGee2010-06-24
|\|
| * makepkg: prevent error trap activation in bash-3.2Allan McRae2010-06-23
| | | | | | | | | | | | | | | | | | Running "pacman -T foo" is expected to return a non-zero value when "foo" is not installed. This sets of the error trap in bash-3.2 but not bash 4.x. Work around this by disabling the error trap around this pacman call as we are manually checking the return value anyway. Signed-off-by: Allan McRae <allan@archlinux.org>
| * rankmirrors: pipe errors to stderrAndres P2010-06-23
| | | | | | | | | | | | | | If this is to be scripted with AIF or another tool, it needs to respect stderr. Signed-off-by: Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
| * rankmirrors: fix bogus pacman configuration parsingAndres P2010-06-23
| | | | | | | | | | | | | | | | Valid pacman configuration files do not have to start with a hash for that line to be a comment, neither do directives need to be in column 0. Signed-off-by: Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
| * rankmirrors: fix bogus variable assignmentAndres P2010-06-23
| | | | | | | | | | | | | | | | | | | | $replacedurl was being built from an expansion of itself. But at the time it happened, it was empty. Fixes FS#19911 Signed-off-by: Andres P <aepd87@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
* | makepkg: Place source packages symlinks in build dir when SRCPKGDEST is usedEric Bélanger2010-06-24
| | | | | | | | | | | | Signed-off-by: Eric Bélanger <snowmaniscool@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>