Re: [aur-general] Account suspension?
Hi Eli, On 27/4/20 10:20 pm, Eli Schwartz via aur-general wrote: I'd be amenable to re-enabling your account with a warning to be more careful next time. However, I would appreciate it if you were to acknowledge the importance of reading recent comments, but especially pinned comments, when you have something to discuss about a package. It's possible someone else has noticed the same thing you did, and provided a solution. Or, in this case, it's possible there was a very important notice, and reading it could prevent a great deal of confusion or non-optimal interactions. ;) Duly noted on reading recent and especially pinned comments to save time and frustration. Would you mind doing the deed and re-enabling my account "Ataraxy"? Thanks in advance, Tom
[aur-general] Account suspension?
Heya all, When logging in as "Ataraxy" at: https://aur.archlinux.org/login The site says: "Account suspended" Can somebody tell me why my account is suspended, and if in error, reactivate? Thanks, -- Tom Hale
[aur-general] Electron packaging guidelines
I've noticed that there are no Electron packaging guidelines at: https://wiki.archlinux.org/index.php/Arch_package_guidelines What are the best-of-breed PKGBUILDs out there for Electron apps? -- Tom Hale
[aur-general] RFC: PKGBUILD for nixnote2-release-bin
Could I please have comments on the below (and attached) PKGBUILD for nixnote2-release-bin. To pre-empt some comments: 1) This will download the latest binary from GitHub. I'm open to a different package name to denote that it's not a '-git' or build-from-latest-source-code, but rather a build-from-latest-binary-release. You may say that building from latest binary release against the packaging guidelines, but I can't see where. Please see prior art regarding this at: https://bbs.archlinux.org/viewtopic.php?pid=1811590#p1811590 2) There is already a '-git' version of this package, but I want to provide another option which: * Is more stable - based on versioned releases rather than the 'continuous' branch. * Has a quicker install - doesn't require waiting for compiling Question: I've found that even with pointing the .desktop file explicitly at the pathname of the icon, xfce4 still doesn't pick it up. Why not? === # Maintainer: Tom Hale # Contributor: twa022 OPTIONS=(!strip) # Stripping an AppImage renders it non-functional _pkgname=nixnote2 pkgname=${_pkgname}-release-bin pkgver=2.1.0.beta4 pkgrel=1 pkgdesc='Evernote clone (formerly Nevernote) - latest binary release' url="https://github.com/robert7/$_pkgname; arch=(x86_64) license=(GPL3) depends=(hicolor-icon-theme zlib) makedepends=(git) conflicts=(nixnote2-git) provides=("nixnote=${pkgver%.r*}" "$_pkgname=${pkgver%.r*}") replaces=(nevernote nixnote nixnote-beta) source=("$pkgname:desktop.patch") sha256sums=(4f12cddc49e0c694f41e344acebc0d8a3bce07a3496098eb2fae258ba9044967) noextract=("${source[@]%%::*}") # Don't extract anything _version_file=$pkgname-PKGBUILD-version # For version from the download URL _appimage_path=$(curl -s 'https://github.com/robert7/nixnote2/releases' | sed -En 's:.*(/releases/download/v[^"/]+/[^"/]+[Aa]pp[Ii]mage)".*:\1:p' | head -n1) _appimage=${_appimage_path##*/} # basename of AppImage prepare() { wget -N "$url/$_appimage_path" # Only download again if server version is newer # Make download executable chmod 755 "$_appimage" # Extract user resources from inside the AppImage # All files in the directories specified are extracted # Note that --appimage-extract currently doesn't support recursive extraction: # https://github.com/AppImage/AppImageKit/issues/370 local extract_dirs=(usr/share/applications usr/share/man/man1 usr/share/icons/hicolor/48x48/apps usr/share/nixnote2 usr/share/nixnote2/help usr/share/nixnote2/translations) # Due to this issue, all --appimage-extract target directories must already exist # https://github.com/AppImage/AppImageKit/issues/363 local dir for dir in "${extract_dirs[@]}"; do mkdir -p squashfs-root/"$dir" "./$_appimage" --appimage-extract "$dir/*" done # Save version of extracted files for pkgver() in `makepkg -e` [[ $_appimage_path =~ /releases/download/v([^/]+).* ]] local version=${BASH_REMATCH[1]} echo ${version//-/.} >| "$_version_file" rm -r squashfs-root/usr/share/"$_pkgname"/{java,images} # Remove non-human resources # Directories are extracted with no permissions for group and other. Fix: find squashfs-root -type d -exec chmod go+rx -- {} + # Have the .desktop point explicitly at the icon patch -d squashfs-root/usr/share/applications < "$pkgname:desktop.patch" } pkgver() { cat "$_version_file" } package() { cd "$pkgdir" # User resources cp -pr "$srcdir"/squashfs-root/usr . # AppImage as /usr/bin/nixnote2 for .desktop file install -Dm755 -T "$srcdir/$_appimage" usr/bin/"$_pkgname" } -- Tom Hale # Maintainer: Tom Hale # Contributor: twa022 OPTIONS=(!strip) # Stripping an AppImage renders it non-functional _pkgname=nixnote2 pkgname=${_pkgname}-release-bin pkgver=2.1.0.beta4 pkgrel=1 pkgdesc='Evernote clone (formerly Nevernote) - latest binary release' url="https://github.com/robert7/$_pkgname; arch=(x86_64) license=(GPL3) depends=(hicolor-icon-theme zlib) makedepends=(git) conflicts=(nixnote2-git) provides=("nixnote=${pkgver%.r*}" "$_pkgname=${pkgver%.r*}") replaces=(nevernote nixnote nixnote-beta) source=("$pkgname:desktop.patch") sha256sums=(4f12cddc49e0c694f41e344acebc0d8a3bce07a3496098eb2fae258ba9044967) noextract=("${source[@]%%::*}") # Don't extract anything _version_file=$pkgname-PKGBUILD-version # For version from the download URL _appimage_path=$(curl -s 'https://github.com/robert7/nixnote2/releases' | sed -En 's:.*(/releases/download/v[^"/]+
[aur-general] Searching the mailing list archives
Is there any way to search this mailing list's archives? I could only find archives, but not searchable ones at: https://lists.archlinux.org/listinfo/aur-general -- Tom Hale
[aur-general] PKGBUILD for an .AppImage
I searched through the forums and can't find anything on packaging an AppImage. The only app referenced (upwork-appimage) is no longer available. The particular AppImage in question is: https://github.com/robert7/nixnote2/releases How do I search this mailing list online? What advice would you give with .AppImages? I *could* rip it open, but the only snag I hit was the binary is linked to `libhunspell-1.3.so.0` whereas Arch has `/usr/lib/libhunspell-1.6.so.0`. Would it be a no-no to install this previous libhunspell version in /usr/lib? If using an unextacted AppImage, where should I install the .AppImage itself? /usr/bin/$pkgname.AppImage with a simlink from /usr/bin/$pkgname? Cheers, -- Tom Hale
Re: [aur-general] Fwd: FS#60333: namcap exits 0 when errors found (Task closed)
On 8/10/18 1:35 pm, Doug Newgard via aur-general wrote: namcap's output is informational, nothing more. Taking it as gospel or using it as any kind of automated checking instead of actually reading the output is not sane. For greater specificity, the informational output can be split into: * Information (-i) * Warnings * Errors Unless they are badly named, are there any cases in which an error is not an error? And if so, that rule could be excluded with --rules=, again making the exit code useful. -- Tom Hale
[aur-general] Fwd: FS#60333: namcap exits 0 when errors found (Task closed)
I noticed that even when namcap prints out errors, it still exits 0. I raised this at: https://bugs.archlinux.org/task/60333 It was closed: Reason for closing: Not a bug Additional comments about closing: namcap runs fine, so exiting with an error makes no sense To me the "reason for closing" is like saying that diff should exit 0 when two files are different because diff ran fine. If namcap is to be used in any automated packaging tools (or even my dodgy script), then it makes sense to have meaningful exit codes. And possibly an option to also have warnings also exit non-0 for the persnickety amongst us. I note that the python source returns 0 and 2, but never 1. I'm a newbie here, but I believe my argument has merit, so I raise it here for possible discussion. -- Tom Hale
Re: [aur-general] RFC: PKGBUILD for nixnote2-git [Finalising]
Thanks all for the great reviews. Thank you in particular to those who said WHY changes were suggested. I now feel empowered to go on to package rambox-os. I believe I have incorporated all the feedback I received in the below. If I missed something it is by mistake - and I ask for your generosity in pointing it out once again. = # Maintainer: Tom Hale # Contributor: twa022 _pkgname=nixnote2 pkgname=${_pkgname}-git pkgver=2.1.0.beta3.r95.g8f235769 pkgrel=2 pkgdesc='Evernote clone (formerly Nevernote) - git checkout' url="https://github.com/robert7/$_pkgname; arch=(x86_64) license=(GPL3) depends=(java-runtime hicolor-icon-theme poppler-qt5 tidy qt5-webkit) makedepends=(git) provides=("nixnote=${pkgver%.r*}" "$_pkgname=${pkgver%.r*}") replaces=(nevernote nixnote nixnote-beta) source=("git+${url}.git") sha256sums=('SKIP') pkgver() { cd "$srcdir/$_pkgname" git describe --long | sed -E 's/^v//;s/([^-]*-g)/r\1/;s/-/./g' } build() { cd "$srcdir/$_pkgname" qmake PREFIX=/usr make } package() { cd "$_pkgname" make INSTALL_ROOT="$pkgdir" install install -Dm644 -t "${pkgdir}/usr/share/doc/${_pkgname}/" docs/{shortcuts-howto,CHANGELOG}.md # Rename shortcuts.txt to align with shortcuts-howto.md: install -m644 shortcuts.txt "${pkgdir}/usr/share/doc/${_pkgname}/shortcuts_sample.txt" } -- Regards, Tom Hale
Re: [aur-general] RFC: PKGBUILD for nixnote2-git [Take 3]
On 7/10/18 4:58 pm, Florian Bruhin wrote: On Sun, Oct 07, 2018 at 04:32:04PM +0700, Tom Hale wrote: Guess you could use $_pkgname here for nixnote2. Also not sure specifying the version there is a good idea. https://wiki.archlinux.org/index.php/PKGBUILD#provides says: Note: The version that the package provides should be mentioned (pkgver and potentially the pkgrel), in case packages referencing the software require one. For instance, a modified qt package version 3.3.8, named qt-foobar, should use provides=('qt=3.3.8'); omitting the version number would cause the dependencies that require a specific version of qt to fail. Do not add pkgname to the provides array, as it is done automatically set -o pipefail That seems like a good idea, but I'm not sure a PKGBUILD should set it. Maybe makepkg even does it by itself? AFAIK it only sets -e. Cheers to you and Luca Weiss for the reviews. My first package will be going live soon. *happy-dance*. -- Tom Hale
Re: [aur-general] RFC: PKGBUILD for nixnote2-git [Take 3]
Here's a version which builds from HEAD of the default branch. Comments please. -- Tom Hale # Maintainer: Tom Hale # Contributor: twa022 _pkgname=nixnote2 _repo_url="https://github.com/robert7/${_pkgname}.git; pkgname=${_pkgname}-git pkgver=v2.1.0.beta3.r95.g8f235769 pkgrel=1 pkgdesc="Evernote clone (formerly Nevernote) - git checkout" url="https://github.com/robert7/nixnote2; arch=(x86_64) license=('GPL3') depends=(hunspell java-runtime hicolor-icon-theme poppler-qt5 tidy qt5-webkit) makedepends=(git) provides=("nixnote=${pkgver%.r*}" "nixnote2=${pkgver%.r*}") replaces=(nevernote nixnote nixnote-beta) source=("${_pkgname}"::git+$_repo_url) sha256sums=('SKIP') set -o pipefail pkgver() { cd "$srcdir/$_pkgname" git describe --long | sed 's/\([^-]*-g\)/r\1/;s/-/./g' } build() { echo "Building package: $_pkgname-$pkgver" >&2 cd "$srcdir/$_pkgname" /usr/bin/qmake PREFIX=/usr make # Strip the binary to save 160MB of disk strip qmake-build-release/"$_pkgname" } package() { cd "$_pkgname" make INSTALL_ROOT="${pkgdir}" install install -Dm644 shortcuts.txt "${pkgdir}/usr/share/doc/$_pkgdir/shortcuts_sample.txt" install -Dm644 docs/{shortcuts-howto,CHANGELOG}.md "${pkgdir}/usr/share/doc/$_pkgdir/" }
Re: [aur-general] RFC: PKGBUILD for nixnote2-git
I want avoid the latest commit for greater stability. Updated attachment: I've dropped the "-git" from the pkgname as I build from the latest annotated tag. On 6/10/18 10:48 pm, Doug Newgard via aur-general wrote: -git PKGBUILDS need to build from the latest commit on master or the default branch, not from a tag. I didn't review the whole thing because the entire concept is invalid. # Maintainer: Tom Hale # Contributor: twa022 # Build the highest versioned tag of nixnote2. # For versioning, see https://github.com/robert7/nixnote2/issues/28 _pkgname=nixnote2 _repo_url="https://github.com/robert7/${_pkgname}.git; pkgname=$_pkgname pkgver=2.1.0.beta4g pkgrel=1 pkgdesc="Evernote clone (formerly Nevernote) - latest tagged version" url="https://github.com/robert7/nixnote2; arch=(x86_64) license=('GPL3') depends=(tidy java-runtime hicolor-icon-theme poppler-qt5 qt5-webkit) makedepends=(git) provides=("nixnote=${pkgver%.r*}" "nixnote2=${pkgver%.r*}") replaces=(nevernote nixnote nixnote-beta) source=("${_pkgname}"::git+$_repo_url) sha256sums=('SKIP') set -o pipefail # Get the tag of the commit to use # Separated out to allow for `makepkg -e` not running prepare() _get_tag() { _tag=$(git -c 'versionsort.suffix=-' ls-remote -t --exit-code --refs --sort=-v:refname \ "$_repo_url" 'v*' \ | sed -E 's/^[[:xdigit:]]+[[:space:]]+refs\/tags\/(.+)/\1/g' | head -n1) echo "Selected git tag: $_tag" >&2 # To STDERR as called from pkgver() } prepare() { _get_tag cd "$srcdir/$_pkgname" git reset --hard "$_tag" } pkgver() { cd "$srcdir/$_pkgname" [[ -z ${_tag-} ]] && _get_tag # Example: v2.1.0-beta3 -> 2.1.0.beta3 echo "$_tag" | sed -E 's/^v//;s/-/./' } build() { echo "Building package: $_pkgname-$pkgver" >&2 cd "$srcdir/$_pkgname" /usr/bin/qmake PREFIX=/usr make # Strip the binary to save 160MB of disk strip qmake-build-release/"$_pkgname" } package() { cd "$_pkgname" make INSTALL_ROOT="${pkgdir}" install install -Dm644 shortcuts.txt "${pkgdir}/usr/share/doc/$_pkgdir/shortcuts_sample.txt" install -Dm644 docs/{shortcuts-howto,CHANGELOG}.md "${pkgdir}/usr/share/doc/$_pkgdir/" }
[aur-general] RFC: PKGBUILD for nixnote2-git
I took over the disowned package nixnote2-git. Attached is my first attempt at a PKGBUILD. I would appreciate constructive feedback. Thanks in advance, -- Tom Hale # Maintainer: Tom Hale # Contributor: twa022 # Build the highest versioned tag of nixnote2. # For versioning, see https://github.com/robert7/nixnote2/issues/28 _pkgname=nixnote2 _repo_url="https://github.com/robert7/${_pkgname}.git; pkgname=${_pkgname}-git pkgver=2.1.0.beta4g pkgrel=1 pkgdesc="Evernote clone (formerly Nevernote) - latest tagged version" url="https://github.com/robert7/nixnote2; arch=(x86_64) license=('GPL3') depends=(tidy java-runtime hicolor-icon-theme poppler-qt5 qt5-webkit) makedepends=(git) provides=("nixnote=${pkgver%.r*}" "nixnote2=${pkgver%.r*}") replaces=(nevernote nixnote nixnote-beta) source=("${_pkgname}"::git+$_repo_url) sha256sums=('SKIP') set -o pipefail # Get the tag of the commit to use # Separated out to allow for `makepkg -e` not running prepare() _get_tag() { _tag=$(git -c 'versionsort.suffix=-' ls-remote -t --exit-code --refs --sort=-v:refname \ "$_repo_url" 'v*' \ | sed -E 's/^[[:xdigit:]]+[[:space:]]+refs\/tags\/(.+)/\1/g' | head -n1) echo "Selected git tag: $_tag" >&2 # To STDERR as called from pkgver() } prepare() { _get_tag cd "$srcdir/$_pkgname" git reset --hard "$_tag" } pkgver() { cd "$srcdir/$_pkgname" [[ -z ${_tag-} ]] && _get_tag # Example: v2.1.0-beta3 -> 2.1.0.beta3 echo "$_tag" | sed -E 's/^v//;s/-/./' } build() { echo "Building package: $_pkgname-$pkgver" >&2 cd "$srcdir/$_pkgname" /usr/bin/qmake PREFIX=/usr make # Strip the binary to save 160MB of disk strip qmake-build-release/"$_pkgname" } package() { cd "$_pkgname" make INSTALL_ROOT="${pkgdir}" install install -Dm644 shortcuts.txt "${pkgdir}/usr/share/doc/$_pkgdir/shortcuts_sample.txt" install -Dm644 docs/{shortcuts-howto,CHANGELOG}.md "${pkgdir}/usr/share/doc/$_pkgdir/" }