You are not logged in.

#1 2016-10-05 16:19:29

AlexIL
Member
From: Israel
Registered: 2016-01-02
Posts: 45
Website

[SOLVED] PKGBUILD review request: gopanda

I'm rewriting the PKGBUILD for gopanda package.
The PKGBUILD:

# Maintainer: Sébastien Feugère <smonff@riseup.net>
# Contributor: Alex Kubica <alexkubicail@gmail.com>
pkgname=gopanda
pkgver=2
pkgrel=3
pkgdesc="Client for the Pandanet-IGS go Server" 
arch=('i686' 'x86_64')
url="http://pandanet-igs.com/communities/$pkgname$pkgversion"
license=('custom')
depends=('libnotify'
	 'alsa-lib'
	 'libxtst'
	 'gtk2'
	 'gconf'
	 'nss')
options=(!strip)
source=(LICENSE)
source_i686=("http://pandanet-igs.com/$pkgname$pkgver/installer/stable/linux-32/$pkgname$pkgver-linux-32.tar.gz")
source_x86_64=("http://pandanet-igs.com/$pkgname$pkgver/installer/stable/linux-64/$pkgname$pkgver-linux-64.tar.gz")
md5sums=('c5951d02adb28f6b333d913ae2f92df0')
md5sums_i686=('170e380003a712267e3e85c0fe38011a')
md5sums_x86_64=('d1fcd13d8de0f2c0331ee0a9cb58a58a')
_DEST="/usr/share/$pkgname"
_CLIENT="GoPanda2"
_DESKTOP="/usr/share/applications/${_CLIENT}.desktop"
_ICON="/usr/share/pixmaps/${_CLIENT}.png"

package() {
	# Copy license
	install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"

	cd "$srcdir/${_CLIENT}"

	# Program
	install -dm755 "${pkgdir}${_DEST}"
  	install -m755 "${_CLIENT}" "${pkgdir}${_DEST}"
    	install -m644 "nw.pak" "${pkgdir}${_DEST}"
	install -m644 "libffmpegsumo.so" "${pkgdir}${_DEST}"
        install -m644 "icudtl.dat" "${pkgdir}${_DEST}"
	
	# Link to program
	install -dm755 "${pkgdir}/usr/bin"
	ln -s "${_DEST}/${_CLIENT}" "${pkgdir}/usr/bin/${pkgname}"

	# Icon
	install -Dm644 "${_CLIENT}.png" "${pkgdir}${_ICON}"

	# Desktop file
	install -Dm644 "${_CLIENT}.orig" "${pkgdir}${_DESKTOP}"
	echo "Exec=${_DEST}/${_CLIENT}" >> "${pkgdir}${_DESKTOP}"
	echo "Icon=${_ICON}" >> "${pkgdir}${_DESKTOP}"
}

The LICENSE:

GoPanda2 belongs to Pandanet Inc, all rights reserved.

The software is delivered "as is" and we take no responsibility for
any problems that arise from usage.

GoPanda2 may be redistributed by third parties only when free of
charge or advertisements and without modifications to the
included source code or resource files.

When I run namcap on the packaged tarball I get this output:

gopanda E: ELF file ('usr/share/gopanda/libffmpegsumo.so') outside of a valid path.
gopanda E: ELF file ('usr/share/gopanda/GoPanda2') outside of a valid path.

Should I ignore it?

Edit:
Should I also mention that the software can be associated with ugi and sgf file type or even install mime types? If so, during the package or post_install function?

Last edited by AlexIL (2016-10-09 18:32:49)

Offline

#2 2016-10-06 19:33:50

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: [SOLVED] PKGBUILD review request: gopanda

gopanda E: ELF file ('usr/share/gopanda/libffmpegsumo.so') outside of a valid path.

Have you tried running gopanda2 with that library in /usr/lib/ ?

gopanda E: ELF file ('usr/share/gopanda/GoPanda2') outside of a valid path.

If that executable can't be run from /usr/bin/ my personal preference would be to use a shellscript instead of a symlink .


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#3 2016-10-06 19:43:21

AlexIL
Member
From: Israel
Registered: 2016-01-02
Posts: 45
Website

Re: [SOLVED] PKGBUILD review request: gopanda

Lone_Wolf wrote:
gopanda E: ELF file ('usr/share/gopanda/libffmpegsumo.so') outside of a valid path.

Have you tried running gopanda2 with that library in /usr/lib/ ?

gopanda E: ELF file ('usr/share/gopanda/GoPanda2') outside of a valid path.

If that executable can't be run from /usr/bin/ my personal preference would be to use a shellscript instead of a symlink .

I'll check about the libffmpegsumo library, the thing is I saw it in other nwjs application, see for example:atraci's PKGBUILD
Maybe it should be packaged on its own?
About the /usr/bin, I'm know sure what you mean by a shellscript?

Offline

#4 2016-10-06 20:44:45

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: [SOLVED] PKGBUILD review request: gopanda

a shellscript is just a few lines of code , often in bash .

check the oolite file in the community package oolite for a package-related example .


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#5 2016-10-06 20:51:28

AlexIL
Member
From: Israel
Registered: 2016-01-02
Posts: 45
Website

Re: [SOLVED] PKGBUILD review request: gopanda

So why is a scriptshell better than a symlink?

Offline

#6 2016-10-06 21:22:21

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: [SOLVED] PKGBUILD review request: gopanda

Both have it's uses , but i would pick flexibility as the main difference .

The oolite file is a good example of that, as it does several things that are impossible fior  a symlink .

Disclaimer :
I wrote most of that file when oolite was still in AUR, there are lots of other (possibly better) examples .


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#7 2016-10-06 21:56:16

AlexIL
Member
From: Israel
Registered: 2016-01-02
Posts: 45
Website

Re: [SOLVED] PKGBUILD review request: gopanda

I'm considering to move it all to /opt since all files must are downloaded together anyways.

Offline

#8 2016-10-07 21:41:40

eschwartz
Fellow
Registered: 2014-08-08
Posts: 4,097

Re: [SOLVED] PKGBUILD review request: gopanda

Architecture-dependent files should never go in /usr/share, some things use /usr/lib instead but /opt works too, and for precompiled linked binaries I would tend to prefer /opt


Managing AUR repos The Right Way -- aurpublish (now a standalone tool)

Offline

#9 2016-10-08 15:32:56

AlexIL
Member
From: Israel
Registered: 2016-01-02
Posts: 45
Website

Re: [SOLVED] PKGBUILD review request: gopanda

Eschwartz wrote:

Architecture-dependent files should never go in /usr/share, some things use /usr/lib instead but /opt works too, and for precompiled linked binaries I would tend to prefer /opt

I see, I think I'll go for /opt then.
I'll mark this thread as solved for now, thank you all very much.

Offline

Board footer

Powered by FluxBB