diff options
author | Ujhhgtg | 2023-07-30 16:31:42 +0800 |
---|---|---|
committer | Ujhhgtg | 2023-07-30 16:31:42 +0800 |
commit | 2394a4f6f114bfde9cf5e9484fb40768a887b231 (patch) | |
tree | 3128efc391ca63389c418def5fc5ee7f79472ed8 | |
parent | 3b735e79a5aa94ad7df35d8c1ae271ff4890ea5f (diff) | |
download | aur-2394a4f6f114bfde9cf5e9484fb40768a887b231.tar.gz |
fix permission error (WITH BUBBLEWRAP)
-rw-r--r-- | .SRCINFO | 3 | ||||
-rw-r--r-- | PKGBUILD | 16 | ||||
-rwxr-xr-x | run.sh | 3 |
3 files changed, 17 insertions, 5 deletions
@@ -8,7 +8,10 @@ pkgbase = phira-bin makedepends = cargo makedepends = git depends = gcc-libs + depends = bubblewrap source = phira-v0.4.0.zip::https://github.com/TeamFlos/phira/releases/download/v0.4.0/Phira-linux-v0.4.0.zip + source = run.sh b2sums = f70c1a067784ce7c74287a3621d5885fbcfa5edc26b60efd2985b40fc9674ef88259eea64a16e4fd090e7552cf48ef13f6ae46f37ad34b096af3836ade174c5b + b2sums = 7fc927449a92b07235c54fe05491c8cefd967649720f5ef2260dd58b3ae50893d72dd5c152f740b746969dd3991d2db7139b7e40e42077783664e0b02dc3bcbd pkgname = phira-bin @@ -9,18 +9,24 @@ url="https://github.com/TeamFlos/phira" license=('GPL3') depends=( 'gcc-libs' + 'bubblewrap' ) + +# The reason this package depends on bubblewrap: +# Since Phira currently reads & writes its config from the dir containing itself, +# which means the permission would be a problem, +# so I used a dirty hackā¢: use bwrap to redirect the config dirs to user dirs. + makedepends=( 'cargo' 'git' ) -source=("${pkgname%-bin}-v$pkgver.zip::https://github.com/TeamFlos/${pkgname%-bin}/releases/download/v$pkgver/Phira-linux-v$pkgver.zip") -b2sums=('f70c1a067784ce7c74287a3621d5885fbcfa5edc26b60efd2985b40fc9674ef88259eea64a16e4fd090e7552cf48ef13f6ae46f37ad34b096af3836ade174c5b') +source=("${pkgname%-bin}-v$pkgver.zip::https://github.com/TeamFlos/${pkgname%-bin}/releases/download/v$pkgver/Phira-linux-v$pkgver.zip" "run.sh") +b2sums=('f70c1a067784ce7c74287a3621d5885fbcfa5edc26b60efd2985b40fc9674ef88259eea64a16e4fd090e7552cf48ef13f6ae46f37ad34b096af3836ade174c5b' '7fc927449a92b07235c54fe05491c8cefd967649720f5ef2260dd58b3ae50893d72dd5c152f740b746969dd3991d2db7139b7e40e42077783664e0b02dc3bcbd') package() { install -Dm755 "${pkgname%-bin}-main" "$pkgdir/usr/share/${pkgname%-bin}/${pkgname%-bin}-main" - cp -r "assets" "$pkgdir/usr/share/${pkgname%-bin}/"pkgname + install -Dm755 "run.sh" "$pkgdir/usr/bin/phira" + cp -r "assets" "$pkgdir/usr/share/${pkgname%-bin}/" install -Dm644 "LICENSE" "$pkgdir/usr/share/licenses/${pkgname%-bin}/LICENSE" - mkdir -p "$pkgdir/usr/bin/" - ln -s "$pkgdir/usr/share/${pkgname%-bin}/${pkgname%-bin}-main" "$pkgdir/usr/bin/${pkgname%-bin}" } diff --git a/run.sh b/run.sh new file mode 100755 index 000000000000..e79da018a143 --- /dev/null +++ b/run.sh @@ -0,0 +1,3 @@ +#!/usr/bin/bash +mkdir -p ~/.config/phira/data/ ~/.config/phira/cache/ +bwrap --bind / / --tmpfs /usr/share/phira/ --ro-bind /usr/share/phira/phira-main /usr/share/phira/phira-main --ro-bind /usr/share/phira/assets/ /usr/share/phira/assets/ --bind ~/.config/phira/data/ /usr/share/phira/data/ --bind ~/.config/phira/cache/ /usr/share/phira/cache/ /usr/share/phira/phira-main
\ No newline at end of file |