skwir

LOW
maintainer venator 0 votes scanned 2026-10-17 01:16:24.843905
View on AUR
Why flagged

Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.

Triggered rules

Low Few votes, recently uploaded zero_votes_recent

Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.

PKGBUILD

1# skwir's Arch packages, for the AUR (ADR-040, ADR-041): built from a
2# release's source with Arch's own Rust, PDFium from the release
3# tools/package/pdfium.lock pins (aur/build.sh checks they agree). skwir
4# carries its helpers, the Poppler reader's and the player's libraries
5# left optional (skwir says the engine is not installed without them);
6# Mermaid and MuPDF are packages of their own. The files are those of the
7# Debian and RPM packages (crates/skwir/Cargo.toml). `just package-aur`
8# writes .SRCINFO beside this file. `just aur-prepare <tag>` fills the
9# source checksum in a separate checkout; `just aur-publish <tag>` pushes
10# its reviewed PKGBUILD and .SRCINFO to the AUR (docs/RELEASING.md).
11# Maintainer: venator <venator at tutamail dot com>
12
13pkgbase=skwir
14pkgname=(skwir skwir-mermaid skwir-mupdf)
15pkgver=0.1.0
16pkgrel=2
17pkgdesc='An augmented file manager, for humans and agents'
18arch=('x86_64' 'aarch64')
19url='https://skwir.org'
20_repo='https://github.com/skwir-org/skwir'
21license=('Apache-2.0')
22# The libraries every helper links, to build them all, and what the
23# packages depend on (a split PKGBUILD names it here too).
24makedepends=(
25 'cargo' 'clang' 'cmake' 'cargo-about' 'python'
26 'libxcb' 'libxkbcommon' 'libxkbcommon-x11' 'sqlite' 'libarchive'
27 'cairo' 'glib2' 'poppler-glib' 'gstreamer' 'gst-plugins-base-libs'
28 'fontconfig' 'vulkan-icd-loader' 'vulkan-driver'
29)
30# makepkg's LTO compiles the C that crates build (MuPDF) into GCC's
31# intermediate code, which Rust's linker (lld) cannot read.
32options=('!lto')
33_pdfium=8086
34source=("$pkgbase-$pkgver.tar.gz::$_repo/archive/v$pkgver.tar.gz")
35source_x86_64=("pdfium-linux-x64-$_pdfium.tgz::https://github.com/bblanchon/pdfium-binaries/releases/download/chromium%2F$_pdfium/pdfium-linux-x64.tgz")
36source_aarch64=("pdfium-linux-arm64-$_pdfium.tgz::https://github.com/bblanchon/pdfium-binaries/releases/download/chromium%2F$_pdfium/pdfium-linux-arm64.tgz")
37# skwir's: filled by aur-prepare after the release tag is pushed; PDFium's: as
38# tools/package/pdfium.lock pins them.
39sha256sums=('4cd2ea398e5a7116e5f4195bca3b7f69b94fc7769bccc810feaff125f2910ded')
40sha256sums_x86_64=('588577cf52dabc1a444988bac841920df54cc2f141801424de97ab04f4fbb935')
41sha256sums_aarch64=('e7e2fe4686925618330103cb167950aca5a84bb00fd977a41b86be59dd1480a2')
42
43prepare() {
44 cd "$pkgbase-$pkgver"
45 export RUSTUP_TOOLCHAIN=stable
46 # Every platform's crates, not only this one's: cargo-about, which makes
47 # the notices in build(), reads every crate Cargo.lock names, offline.
48 # From 0.1.1 on, the notices come with the source (ADR-063).
49 cargo fetch --locked
50}
51
52build() {
53 cd "$pkgbase-$pkgver"
54 export RUSTUP_TOOLCHAIN=stable
55 export CARGO_TARGET_DIR=target
56 # shellcheck disable=SC2046 # one `-p name` per program
57 cargo build --frozen --profile dist $(sed 's/^/-p /' tools/package/programs)
58 # What each package's programs link, and their notices: Mermaid's and
59 # MuPDF's helpers apart, the others skwir's.
60 tools/package/notices.py skwir-mermaid-worker skwir-mupdf-worker
61}
62
63package_skwir() {
64 # What its programs link, and what skwir opens at run time (the Vulkan
65 # loader and a driver for it, fontconfig).
66 depends=(
67 'libgcc' 'glibc' 'libxcb' 'libxkbcommon' 'libxkbcommon-x11' 'sqlite'
68 'fontconfig' 'vulkan-icd-loader' 'vulkan-driver' 'libarchive'
69 )
70 optdepends=(
71 'gstreamer: audio and video playback'
72 'gst-plugins-base-libs: audio and video playback'
73 'gst-plugins-base: audio and video playback'
74 'gst-plugins-good: more audio and video formats'
75 'gst-plugins-bad: more audio and video formats'
76 'gst-plugins-ugly: more audio and video formats'
77 'gst-libav: more audio and video formats'
78 'poppler-glib: PDFs through Poppler, beside the PDFium skwir carries'
79 'skwir-mermaid: Mermaid diagrams drawn in Markdown previews'
80 'skwir-mupdf: the MuPDF engine, PDFs and books laid out into pages'
81 'bubblewrap: LibreOffice, ImageMagick and thumbnailers run isolated'
82 'libreoffice-fresh: office documents shown as pages'
83 'pandoc-cli: text documents read by Pandoc'
84 'imagemagick: pictures no thumbnailer draws'
85 'ffmpeg: still frames of films'
86 'perl-image-exiftool: writing and removing pictures locations'
87 'plocate: instant name searches over whole disks'
88 'udisks2: unmounting volumes from the sidebar'
89 )
90 # skwir's own, PDFium's, and the Poppler reader's: a program linking
91 # Poppler, whose core is GPL v2 or v3, with code under Apache-2.0 is
92 # under the GPL v3 (ADR-042).
93 license=('Apache-2.0' 'BSD-3-Clause' 'GPL-3.0-only')
94 cd "$pkgbase-$pkgver"
95 install -Dm755 target/dist/skwir "$pkgdir/usr/bin/skwir"
96 while read -r program; do
97 case "$program" in
98 skwir | skwir-mermaid-worker | skwir-mupdf-worker) ;;
99 *) install -Dm755 "target/dist/$program" -t "$pkgdir/usr/lib/skwir/" ;;
100 esac
101 done < tools/package/programs
102 install -Dm755 "$srcdir/lib/libpdfium.so" -t "$pkgdir/usr/lib/skwir/"
103 install -Dm644 "$srcdir/LICENSE" "$srcdir"/licenses/* -t "$pkgdir/usr/share/licenses/$pkgbase/pdfium/"
104 install -Dm644 tools/package/linux/org.skwir.skwir.desktop -t "$pkgdir/usr/share/applications/"
105 install -Dm644 tools/package/linux/org.skwir.skwir.metainfo.xml -t "$pkgdir/usr/share/metainfo/"
106 install -Dm644 crates/ui/assets/org.skwir.skwir.svg -t "$pkgdir/usr/share/icons/hicolor/scalable/apps/"
107 install -Dm644 README.md -t "$pkgdir/usr/share/doc/$pkgbase/"
108 install -Dm644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgbase/"
109 install -Dm644 target/notices/skwir/THIRD-PARTY-NOTICES -t "$pkgdir/usr/share/licenses/skwir/"
110}
111
112package_skwir-mermaid() {
113 pkgdesc="Mermaid diagrams drawn in skwir's Markdown previews"
114 depends=('skwir' 'libgcc' 'glibc')
115 cd "$pkgbase-$pkgver"
116 install -Dm755 target/dist/skwir-mermaid-worker -t "$pkgdir/usr/lib/skwir/"
117 install -Dm644 LICENSE -t "$pkgdir/usr/share/licenses/skwir-mermaid/"
118 install -Dm644 target/notices/skwir-mermaid/THIRD-PARTY-NOTICES -t "$pkgdir/usr/share/licenses/skwir-mermaid/"
119}
120
121package_skwir-mupdf() {
122 pkgdesc="skwir's MuPDF engine: PDFs, and books laid out into pages"
123 depends=('skwir' 'libgcc' 'glibc')
124 # skwir's code, linking MuPDF (ADR-014).
125 license=('AGPL-3.0-or-later')
126 cd "$pkgbase-$pkgver"
127 install -Dm755 target/dist/skwir-mupdf-worker -t "$pkgdir/usr/lib/skwir/"
128 install -Dm644 target/notices/skwir-mupdf/THIRD-PARTY-NOTICES -t "$pkgdir/usr/share/licenses/skwir-mupdf/"
129}
130

Changes since previous scan

--- PKGBUILD @ 2026-10-14 00:06
+++ PKGBUILD @ 2026-10-17 01:16
@@ -13,7 +13,7 @@
pkgbase=skwir
pkgname=(skwir skwir-mermaid skwir-mupdf)
pkgver=0.1.0
-pkgrel=1
+pkgrel=2
pkgdesc='An augmented file manager, for humans and agents'
arch=('x86_64' 'aarch64')
url='https://skwir.org'
@@ -43,7 +43,10 @@
prepare() {
cd "$pkgbase-$pkgver"
export RUSTUP_TOOLCHAIN=stable
- cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')"
+ # Every platform's crates, not only this one's: cargo-about, which makes
+ # the notices in build(), reads every crate Cargo.lock names, offline.
+ # From 0.1.1 on, the notices come with the source (ADR-063).
+ cargo fetch --locked
}
build() {

Scan history

Scanned at (UTC)SeverityRules
2026-10-17 01:16:24 Low 1
2026-10-14 00:06:47 Clean 2
2026-10-13 23:18:21 Low 1

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion