add dependency

This commit is contained in:
Daniel Langbein 2021-04-26 15:05:33 +02:00
parent e7ed46a8bc
commit 32c2181331
2 changed files with 66 additions and 13 deletions

View File

@ -2,14 +2,14 @@
_pkgname=repo _pkgname=repo
_reponame=arch-pkg _reponame=arch-pkg
pkgname="de-p1st-$_pkgname" pkgname="de-p1st-$_pkgname"
pkgver=0.1.1 pkgver=0.1.2
pkgrel=3 pkgrel=1
pkgdesc="Bash script to manage remote Arch Linux repository" pkgdesc="Bash script to manage remote Arch Linux repository"
arch=('any') arch=('any')
url="https://git.privacy1st.de/langfingaz/${_reponame}" url="https://git.privacy1st.de/langfingaz/${_reponame}"
license=('MIT') license=('MIT')
groups=() groups=()
depends=('openssh' 'bash') depends=('openssh' 'bash' 'aurutils') # arch-repo-vercmp uses "aur vercmp" which is part of "aurutils"
makedepends=('git') makedepends=('git')
optdepends=() optdepends=()
provides=() provides=()

View File

@ -1,15 +1,15 @@
# arch-repo manager # Arch repository manager
Special thanks to nachoparker for his article: Special thanks to nachoparker for his article:
* https://ownyourbits.com/2019/07/21/replicate-your-system-with-self-hosted-arch-linux-metapackages/ * https://ownyourbits.com/2019/07/21/replicate-your-system-with-self-hosted-arch-linux-metapackages/
## setup ## Setup
Install `de-p1st-repo` on your local machine as well as on Install `de-p1st-repo` on your local machine as well as on
a remote server. a remote server.
Adjust `/etc/de-p1st-repo/*.conf` according to your needs. Adjust `/etc/de-p1st-repo/arch-repo.conf` according to your needs.
Run a webserver on the server to serve static content: Run a webserver on the server to serve static content:
@ -24,17 +24,70 @@ SigLevel = Optional TrustAll
Server = https://arch.p1st.de Server = https://arch.p1st.de
``` ```
## normal usage ## Normal usage
1. Build packages on local machine ### Build and push
* `aur sync -c SOME_AUR_PACKAGE` Build packages on local machine
* `aur sync -c -u`
2. Push new packages to remote repository * e.g. with `aur sync -c SOME_AUR_PACKAGE`
Push new packages to remote repository
* `arch-repo-push-new` * `arch-repo-push-new`
3. Check for AUR updates ### Check for AUR updates and push
Check remote repository four AUR packages that can be updated
* `arch-repo-vercmp` * `arch-repo-vercmp`
Then build those packages locally and push changes to remote repository
* e.g. with `aur sync -c SOME_AUR_PACKAGE`
* `arch-repo-push-new`
## example output
```
user@localMachine ~ % arch-repo-push-new
de-p1st-pacman-0.0.7-2-any.pkg.tar.zst
2.84K 100% 0.00kB/s 0:00:00 (xfr#1, to-chk=325/384)
de-p1st-repo-0.1.1-2-any.pkg.tar.zst
5.13K 100% 4.90MB/s 0:00:00 (xfr#2, to-chk=308/384)
de-p1st-repo-0.1.1-3-any.pkg.tar.zst
5.13K 100% 4.90MB/s 0:00:00 (xfr#3, to-chk=307/384)
new-pkg.txt
113 100% 0.00kB/s 0:00:00 (xfr#1, to-chk=0/1)
Adding new packages to db ...
Sorting new packages by package name and package version ...
Creating file ./db/de-p1st-pacman/0.0.7-2 with content de-p1st-pacman-0.0.7-2-any.pkg.tar.zst ...
Creating file ./db/de-p1st-repo/0.1.1-2 with content de-p1st-repo-0.1.1-2-any.pkg.tar.zst ...
Creating file ./db/de-p1st-repo/0.1.1-3 with content de-p1st-repo-0.1.1-3-any.pkg.tar.zst ...
For each new package name: Add latest version to database ...
==> Extracting de-p1st.db.tar.gz to a temporary location...
==> Extracting de-p1st.files.tar.gz to a temporary location...
==> Adding package 'de-p1st-pacman-0.0.7-2-any.pkg.tar.zst'
-> Computing checksums...
-> Removing existing entry 'de-p1st-pacman-0.0.7-1'...
-> Creating 'desc' db entry...
-> Creating 'files' db entry...
==> Creating updated database file 'de-p1st.db.tar.gz'
==> Extracting de-p1st.db.tar.gz to a temporary location...
==> Extracting de-p1st.files.tar.gz to a temporary location...
==> Adding package 'de-p1st-repo-0.1.1-3-any.pkg.tar.zst'
-> Computing checksums...
-> Removing existing entry 'de-p1st-repo-0.1.1-1'...
-> Creating 'desc' db entry...
-> Creating 'files' db entry...
==> Creating updated database file 'de-p1st.db.tar.gz'
Generating index.html with links to all packages ...
```
Where the generated `new-pkg.txt` has this content:
```
de-p1st-pacman-0.0.7-2-any.pkg.tar.zst
de-p1st-repo-0.1.1-2-any.pkg.tar.zst
de-p1st-repo-0.1.1-3-any.pkg.tar.zst
```