Age | Commit message (Collapse) | Author |
|
It mistakenly looped over just the first element of the ARCHES array,
instead of the entire array. This meant that it only checked the
permissions for one architecture.
|
|
It is a method of notifying text-editors that a file is in Bash syntax
without giving it a propper shebang (which would be confusing, as it
would suggest that the file should be executable), as well as working
across virtually all text-editors (unlike "-*- Mode: Bash -*-" or
whatever).
|
|
`grep -q` may exit as soon as it finds a match; this is a good optimization
for when the input is a file. However, if the input is the output of
another program, then that other program will receive SIGPIPE, and further
writes will fail. When this happens, it might (bsdtar does) print a
message about a "write error" to stderr. Which is going to confuse and
alarm the user.
I'll add that this is not purely hypothetical--it has happened to me while
running the test suite.
|
|
|
|
The += operator was introduced in Bash 3.1, and was already used in some
places in dbscripts, but not everywhere.
For normal strings, this isn't a big deal, but appending to an array
without using += is nasty.
|
|
|
|
Other than pure quoting, this involved:
- swapping */@ for array access in a few places
- fiddling with printf in a pipeline
- replacing `$(echo ${array[@]})` with `${array[*]}`
- replacing `echo $(...)` with `...`
When searching for these things, I used the command:
grep -Prn --exclude-dir=.git '(?<!["=]|\[\[ |\[\[ -[zn] )\$(?!{?#|\(|\? )'
and ignored a bunch of false positives.
|
|
double shame!
This will detect both, packages with missing .BUILDINFO (built in
non updated environments) and packages that are not built in a
chroot at all (indicated by non default builddir).
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
|
|
With pacman 5.0 repo-add and repo-remove handle file databases by default.
|
|
Shame.
Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
|
|
This allows for faster checking if an update might be needed and helps
to let reporead run when something changed.
Signed-off-by: Florian Pritz <bluewind@xinu.at>
|
|
ACLs from the WORKDIR were used, leading to problems as these weren't
world-readable. Fix follows ftpdir-cleanup.
Signed-off-by: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
|
|
|
|
* A SVNUSER can be configured in the config file
* This user needs to be able to call svn without a password
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
In addition to this dbscripts wont accept unsigned pacakges when
REQUIRE_SIGNATURE is set to true.
Note: At this point no signature verification is performed at all.
|
|
|
|
|
|
repo-add and repo-remove is now indirectly called by arch_repo_add/remove.
This simplifies future extensions like incremental file list creations. See FS#11302
|
|
|
|
|
|
* Decrease file stats as much as possible
* Create a list of all packages and meta data only once
* Create a list of available source packages only once
* Create a list of expected packages only once
* Combine all three scripts into one to share data and code
* Use as much information from the db files as possible and avoid using svn
* Avoid attempting to create the same source package twice
Logic works as follows:
1) create a list of all packages
2) Check for each package if we need a src package and create one
3) During this process create a list of all src packages that should be there
4) Diff both lists for the cleanup
|
|
PKGBUILDs expect CARCH to be set. This is needed when sourcing them directly.
|
|
|
|
|
|
In addition to pkgver and pkgrel it is checked if pkgname is defined in the PKGBUILD.
|
|
Don't use globing as this will match a package of the same version but another arch.
We can be more specific here as there are no longer packages without $arch extension.
|
|
Using the hostname to decide which repos to use is not releiable and hard to test.
Instead use config.local to configure these.
config files for sigurd and gerolde were added which can be copied or symlinked to config.local
on the specific host.
|
|
|
|
This also checks if the sam package exists within the old package
layout (without package pool)
|
|
See FS#20745
|
|
* When writing the db file ensure that it has write permission of the group which owns the parent directory.
* This should make the adjust-permissions cron job obsolete.
|
|
* Repositories can now be defined in the config file for each host
* added community-staging, gnome-unstable and kde-unstable
* Exception is the adjust-permission cron-job; but we might want to use acls in future anyway
Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
|
|
|
|
If reading from a PKGBUILD fails stop immediatly. Also put out more usefull error messages.
|
|
|
|
|
|
|
|
|
|
* db-update now updates all repos with packages in its staging dirs
* sanity checks are performed before any repo is touched
* improved performance
* less code; easier to maintain
|
|
These functions are copied from makepkg
|
|
Added a function to check if user has permission to alter the repos
and db files.
|
|
There are no longer architecture-specific subdirs and the structure was switch to this:
ftp
└── pool
├── community
└── packages
packages contains all packages from core, extra and testing; this naming is in sync with the svn repo naming:
svn-packages and svn-community
|
|
|