diff --git a/.SRCINFO b/.SRCINFO index 517801d..733bf46 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -1,6 +1,6 @@ pkgbase = pcloudcc-lneely pkgdesc = pcloudcc-lneely is a simple linux console client for pCloud cloud storage, forked from github.com/pcloudcom/console-client and independently maintained. - pkgver = 20260310T1252Z + pkgver = 20260311T214010Z pkgrel = 1 epoch = 0 url = https://github.com/lneely/pcloudcc-lneely @@ -10,13 +10,19 @@ pkgbase = pcloudcc-lneely makedepends = udev depends = readline depends = zlib - depends = fuse2 + depends = fuse3 depends = mbedtls depends = sqlite depends = boost provides = pcloudcc conflicts = pcloudcc-git - source = pcloudcc-lneely-20260310T1252Z.tar.gz::https://codeload.github.com/lneely/pcloudcc-lneely/tar.gz/refs/tags/20260310T1252Z - sha256sums = 1cd6f003ea507560ad5d73a07ae2917f947e6f335b17c2ce634324055594e7a2 + source = pcloudcc-lneely-20260311T214010Z.tar.gz::https://codeload.github.com/lneely/pcloudcc-lneely/tar.gz/refs/tags/20260311T214010Z + source = pcloudcc@.service + source = pcloud.env.sample + source = pcloudcc-systemd.md + sha256sums = 73a9cddb47f475c92c70a6a68ea0c5454519627287caeb75800a96a605da72ac + sha256sums = SKIP + sha256sums = SKIP + sha256sums = SKIP pkgname = pcloudcc-lneely diff --git a/PKGBUILD b/PKGBUILD index 0f8bf5a..0719632 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -1,5 +1,5 @@ pkgname=pcloudcc-lneely -pkgver=20260310T1252Z +pkgver=20260311T214010Z pkgrel=1 epoch=0 pkgdesc="pcloudcc-lneely is a simple linux console client for pCloud cloud storage, forked from github.com/pcloudcom/console-client and independently maintained." @@ -8,10 +8,16 @@ provides=("pcloudcc") conflicts=("pcloudcc-git") url="https://github.com/lneely/pcloudcc-lneely" license=(BSD-3-Clause) -depends=(readline zlib fuse2 mbedtls sqlite boost) +depends=(readline zlib fuse3 mbedtls sqlite boost) makedepends=(udev) -source=("$pkgname-$pkgver.tar.gz::https://codeload.github.com/lneely/pcloudcc-lneely/tar.gz/refs/tags/$pkgver") -sha256sums=('1cd6f003ea507560ad5d73a07ae2917f947e6f335b17c2ce634324055594e7a2') +source=("$pkgname-$pkgver.tar.gz::https://codeload.github.com/lneely/pcloudcc-lneely/tar.gz/refs/tags/$pkgver" + "pcloudcc@.service" + "pcloud.env.sample" + "pcloudcc-systemd.md") +sha256sums=('73a9cddb47f475c92c70a6a68ea0c5454519627287caeb75800a96a605da72ac' + 'SKIP' + 'SKIP' + 'SKIP') build() { cd "pcloudcc-lneely-$pkgver" @@ -22,6 +28,10 @@ package() { cd "pcloudcc-lneely-$pkgver" install -d $pkgdir/usr/bin install -m 755 pcloudcc $pkgdir/usr/bin/pcloudcc + + install -Dm644 "$srcdir/pcloudcc@.service" "$pkgdir/usr/lib/systemd/user/pcloudcc@.service" + install -Dm644 "$srcdir/pcloud.env.sample" "$pkgdir/usr/share/doc/$pkgname/pcloud.env.sample" + install -Dm644 "$srcdir/pcloudcc-systemd.md" "$pkgdir/usr/share/doc/$pkgname/pcloudcc-systemd.md" } diff --git a/pcloud.env.sample b/pcloud.env.sample new file mode 100644 index 0000000..71bd79b --- /dev/null +++ b/pcloud.env.sample @@ -0,0 +1,3 @@ +# pCloud environment configuration +# Copy this file to ~/.pcloud/pcloud.env and set your pCloud username +PCLOUD_USER=your_pcloud_username diff --git a/pcloudcc-systemd.md b/pcloudcc-systemd.md new file mode 100644 index 0000000..33b1164 --- /dev/null +++ b/pcloudcc-systemd.md @@ -0,0 +1,39 @@ +# pcloudcc systemd user service + +## Setup + +Before enabling the service, you must configure pcloudcc credentials: + +```bash +# Run pcloudcc interactively to set up credentials +pcloudcc -u your_username -s + +# This will: +# - Prompt for password +# - Save credentials to ~/.pcloud/data.db +# - Create necessary configuration +``` + +## Usage + +After initial setup: + +```bash +# Enable and start the service +systemctl --user enable --now pcloudcc@your_username.service + +# Check status +systemctl --user status pcloudcc@your_username.service + +# Stop the service +systemctl --user stop pcloudcc@your_username.service + +# View logs +journalctl --user -u pcloudcc@your_username.service +``` + +## Notes + +- The service requires `~/.pcloud/data.db` to exist (created during initial setup) +- Use the `-s` flag during setup to save your password +- The service will not start without saved credentials diff --git a/pcloudcc@.service b/pcloudcc@.service new file mode 100644 index 0000000..786d27a --- /dev/null +++ b/pcloudcc@.service @@ -0,0 +1,16 @@ +[Unit] +Description=pCloud console client for %i +After=network-online.target +Wants=network-online.target +ConditionPathExists=%h/.pcloud/data.db + +[Service] +Type=forking +EnvironmentFile=%h/.pcloud/pcloud.env +ExecStart=/usr/bin/pcloudcc -u ${PCLOUD_USER} -d +ExecStop=/bin/sh -c 'echo "finalize" | /usr/bin/pcloudcc -k' +Restart=on-failure +RestartSec=10 + +[Install] +WantedBy=default.target