I fix it by editing PKGBUILD, and adding the following line
package() {
...
+ install -Dm644 "systemd/target.service" "$pkgdir/usr/lib/systemd/system/target.service"
}
![]() |
VOOZH | about |
| Git Clone URL: | https://aur.archlinux.org/python-rtslib-fb.git (read-only, click to copy) |
|---|---|
| Package Base: | python-rtslib-fb |
| Description: | free branch version of the LIO target API |
| Upstream URL: | https://github.com/open-iscsi/rtslib-fb |
| Licenses: | Apache |
| Conflicts: | python-rtslib |
| Provides: | python-rtslib |
| Submitter: | JonnyJD |
| Maintainer: | fuhry |
| Last Packager: | eworm |
| Votes: | 10 |
| Popularity: | 0.000438 |
| First Submitted: | 2013-10-08 20:54 (UTC) |
| Last Updated: | 2026-06-08 16:48 (UTC) |
I fix it by editing PKGBUILD, and adding the following line
package() {
...
+ install -Dm644 "systemd/target.service" "$pkgdir/usr/lib/systemd/system/target.service"
}
Hi, Is it intentional that target.service is still missing from the package? For some of us, this is one of the most important services on the server. Is there any recommended substitute or workaround available?
==> ERROR: Cannot find the git package needed to handle git sources.
==> ERROR: Build failed, check /var/cache/chroot/x86_64/miffe/build
Needs git in makedepends.
Please include the systemd unit target.service in the package. Also add the creation of the directory /etc/target. Without it, target.service crashes with an error.
июн 02 10:36:48 Nout-arch target[22048]: File "/usr/lib/python3.13/site-packages/rtslib/root.py", line 94, in __init__
июн 02 10:36:48 Nout-arch target[22048]: self._set_dbroot()
июн 02 10:36:48 Nout-arch target[22048]: ~~~~~~~~~~~~~~~~^^
июн 02 10:36:48 Nout-arch target[22048]: File "/usr/lib/python3.13/site-packages/rtslib/root.py", line 169, in _set_dbroot
июн 02 10:36:48 Nout-arch target[22048]: raise RTSLibError(f"Cannot set dbroot to {self._preferred_dbroot}. "
июн 02 10:36:48 Nout-arch target[22048]: f"Please check if this directory exists.")
июн 02 10:36:48 Nout-arch target[22048]: rtslib.utils.RTSLibError: Cannot set dbroot to /etc/target. Please check if this directory exists.
While we wait for @fuhry to update, here's an updated PKGBUILD for 2.2.3 (which fixes restoreconfig in targetcli):
# Contributor: Johannes Dewender arch at JonnyJD dot net
pkgname=python-rtslib-fb
_pkgname=rtslib-fb
pkgver=2.2.3
pkgrel=1
pkgdesc="free branch version of the LIO target API"
arch=('any')
url="https://github.com/open-iscsi/${_pkgname}"
license=('Apache')
options=()
depends=('python' 'python-pyudev')
makedepends=('python' 'python-build' 'python-pip' 'python-pyudev')
provides=('python-rtslib')
conflicts=('python-rtslib')
source=("git+${url}.git#tag=v${pkgver}")
sha512sums=('c3d249d2b965d155860fbf77b57b99cb5f78fd325ae38ba65fbecb7853cf03a48e983e16ba23e4e8c5f33fac8fd29d58b11e3305e563d380c632bc96f32b17a7')
_pydep1() {
if which python >/dev/null 2>&1; then
python -c 'import sys; major, minor = sys.version.split(".")[:2]; print(f"python>={major}.{minor}")'
else
echo "python"
fi
}
_pydep2() {
if which python >/dev/null 2>&1; then
python -c 'import sys; major, minor = sys.version.split(".")[:2]; print(f"python<{major}.{int(minor)+1}")'
else
echo "python"
fi
}
build() {
cd "$srcdir/$_pkgname"
python -m build
}
package() {
depends=("$(_pydep1)" "$(_pydep2)" "${depends[@]:1}")
cd "$srcdir/$_pkgname"
python -m pip install --no-deps --ignore-installed --root="$pkgdir/" dist/${_pkgname/-fb/_fb}-${pkgver}-py3-none-any.whl
}
2.2.3 was released. Can we get this updated?
The last commit (2025-02-05 11:50:42 -0500, dc7d72fffd7c) removed the systemd service. Was this intentional ?
Please don't use pip to install. python-installer should be used instead.
@bobpaul Thanks, I switched back to 2.1.76 and everything is working.