You are not logged in.

#1 2021-11-03 05:46:27

hossbeast
Member
From: Seattle
Registered: 2017-06-26
Posts: 24

new PKGBUILD review - meshboard

Hello, first time AUR contributor here.

I am packaging this program - https://github.com/hossbeast/meshboard

Because the program can be configured to support either, both, or none of {xorg, wayland}, I came up with 4 different PKGBUILDs corresponding to those variations.

I read about split-package, but I think it ought to be possible for a user to build and use the software in xorg-only mode (or wayland-only mode), without installing the build dependencies of the other.

Also, some users might have both display servers installed and want support for both environments. Also, there's a usecase for running this on a server, which is the -headless variant.

Thanks in advance for any feedback.

PKGBUILD for meshboard

# Maintainer: hossbeast <todd DOT freed AT gmail DOT com>
# Contributor : hossbeast <todd DOT freed AT gmail DOT com>

pkgname=meshboard
pkgver=v0.5.0
pkgrel=1
pkgdesc="Synchronize the clipboard across a mesh of hosts"
arch=('x86_64')
url="https://github.com/hossbeast/meshboard"
license=('GPL3')
depends=('wayland' 'libxfixes')
makedepends=('git' 'flex' 'bison' 'perl')
source=(
  "meshboard::git+https://github.com/hossbeast/meshboard"
)
sha512sums=('SKIP')
validpgpkeys=('79154EE9C4811D32B814EB88B1B3C76D76638462') # hossbeast

pkgver() {
  cd meshboard
  git describe --long | sed 's/v//;s/\([^-]*-g\)/r\1/;s/-/./g'
}

build() {
  cd meshboard
  ./configure --enable-xorg --enable-wayland
  make -j 12
}

package() {
  install -m755 -d "$pkgdir/usr/bin"
  install -m755 -t "$pkgdir/usr/bin" "$srcdir/meshboard/meshboard"

  install -m755 -d "$pkgdir/usr/share/doc/$pkgname"
  install -m755 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/README.md"
  install -m755 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/CHANGELOG"

  install -m755 -d "$pkgdir/usr/share/licenses/$pkgname"
  install -m755 -t "$pkgdir/usr/share/licenses/$pkgname" "$srcdir/meshboard/LICENSE"

  install -m755 -d "$pkgdir/usr/lib/systemd/user"
  install -m755 -t "$pkgdir/usr/lib/systemd/user" "$srcdir/meshboard/systemd/meshboard.service"
}

PKGBUILD for meshboard-wayland

# Maintainer: hossbeast <todd DOT freed AT gmail DOT com>
# Contributor : hossbeast <todd DOT freed AT gmail DOT com>

pkgname=meshboard-wayland
pkgver=v0.5.0
pkgrel=1
pkgdesc="Synchronize the clipboard across a mesh of hosts, with wayland integration"
provides=('meshboard')
arch=('x86_64')
url="https://github.com/hossbeast/meshboard"
license=('GPL3')
depends=('wayland')
makedepends=('git' 'flex' 'bison' 'perl')
source=(
  "meshboard::git+https://github.com/hossbeast/meshboard"
)
sha512sums=('SKIP')
validpgpkeys=('79154EE9C4811D32B814EB88B1B3C76D76638462') # hossbeast

pkgver() {
  cd meshboard
  git describe --long | sed 's/v//;s/\([^-]*-g\)/r\1/;s/-/./g'
}

build() {
  cd meshboard
  ./configure --enable-wayland
  make -j 12
}

package() {
  install -m755 -d "$pkgdir/usr/bin"
  install -m755 -t "$pkgdir/usr/bin" "$srcdir/meshboard/meshboard"

  install -m755 -d "$pkgdir/usr/share/doc/$pkgname"
  install -m755 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/README.md"
  install -m755 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/CHANGELOG"

  install -m755 -d "$pkgdir/usr/share/licenses/$pkgname"
  install -m755 -t "$pkgdir/usr/share/licenses/$pkgname" "$srcdir/meshboard/LICENSE"

  install -m755 -d "$pkgdir/usr/lib/systemd/user"
  install -m755 -t "$pkgdir/usr/lib/systemd/user" "$srcdir/meshboard/systemd/meshboard.service"
}

PKGBUILD for meshboard-xorg

# Maintainer: hossbeast <todd DOT freed AT gmail DOT com>
# Contributor : hossbeast <todd DOT freed AT gmail DOT com>

pkgname=meshboard-xorg
pkgver=v0.5.0
pkgrel=1
pkgdesc="Synchronize the clipboard across a mesh of hosts, with xorg integration"
provides=('meshboard')
arch=('x86_64')
url="https://github.com/hossbeast/meshboard"
license=('GPL3')
depends=('libxfixes')
makedepends=('git' 'flex' 'bison' 'perl')
source=(
  "meshboard::git+https://github.com/hossbeast/meshboard"
)
sha512sums=('SKIP')
validpgpkeys=('79154EE9C4811D32B814EB88B1B3C76D76638462') # hossbeast

pkgver() {
  cd meshboard
  git describe --long | sed 's/v//;s/\([^-]*-g\)/r\1/;s/-/./g'
}

build() {
  cd meshboard
  ./configure --enable-xorg
  make -j 12
}

package() {
  install -m755 -d "$pkgdir/usr/bin"
  install -m755 -t "$pkgdir/usr/bin" "$srcdir/meshboard/meshboard"

  install -m755 -d "$pkgdir/usr/share/doc/$pkgname"
  install -m755 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/README.md"
  install -m755 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/CHANGELOG"

  install -m755 -d "$pkgdir/usr/share/licenses/$pkgname"
  install -m755 -t "$pkgdir/usr/share/licenses/$pkgname" "$srcdir/meshboard/LICENSE"

  install -m755 -d "$pkgdir/usr/lib/systemd/user"
  install -m755 -t "$pkgdir/usr/lib/systemd/user" "$srcdir/meshboard/systemd/meshboard.service"
}

PKGBUILD for meshboard-headless

# Maintainer: hossbeast <todd DOT freed AT gmail DOT com>
# Contributor : hossbeast <todd DOT freed AT gmail DOT com>

pkgname=meshboard-headless
pkgver=v0.5.0
pkgrel=1
pkgdesc="Synchronize the clipboard across a mesh of hosts, without display server support"
provides=('meshboard')
arch=('x86_64')
url="https://github.com/hossbeast/meshboard"
license=('GPL3')
depends=('glibc')
makedepends=('git' 'flex' 'bison' 'perl')
source=(
  "meshboard::git+https://github.com/hossbeast/meshboard"
)
sha512sums=('SKIP')
validpgpkeys=('79154EE9C4811D32B814EB88B1B3C76D76638462') # hossbeast

pkgver() {
  cd meshboard
  git describe --long | sed 's/v//;s/\([^-]*-g\)/r\1/;s/-/./g'
}

build() {
  cd meshboard
  ./configure
  make -j 12
}

package() {
  install -m755 -d "$pkgdir/usr/bin"
  install -m755 -t "$pkgdir/usr/bin" "$srcdir/meshboard/meshboard"

  install -m755 -d "$pkgdir/usr/share/doc/$pkgname"
  install -m755 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/README.md"
  install -m755 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/CHANGELOG"

  install -m755 -d "$pkgdir/usr/share/licenses/$pkgname"
  install -m755 -t "$pkgdir/usr/share/licenses/$pkgname" "$srcdir/meshboard/LICENSE"

  install -m755 -d "$pkgdir/usr/lib/systemd/user"
  install -m755 -t "$pkgdir/usr/lib/systemd/user" "$srcdir/meshboard/systemd/meshboard.service"
}

Offline

#2 2021-11-03 06:36:29

willemw
Member
Registered: 2013-02-19
Posts: 113

Re: new PKGBUILD review - meshboard

These are not VCS packages. They should not have a pkgver() function nor need to depend on git.

'make -j 12' should be 'make'. The -j option is configured in /etc/makepkg.conf.

Offline

#3 2021-11-03 06:46:52

willemw
Member
Registered: 2013-02-19
Posts: 113

Re: new PKGBUILD review - meshboard

'glibc', 'flex', 'bison' and 'perl' are already installed.

The 'v' in pkgver should be removed.

conflicts=('meshboard') is missing in the meshboard-* packages.

Checksums are missing.

Offline

#4 2021-11-03 07:00:27

willemw
Member
Registered: 2013-02-19
Posts: 113

Re: new PKGBUILD review - meshboard

Use 'install -m644' for non-executable files. I don't think you need to do 'install -d' here.

Offline

#5 2021-11-03 11:12:47

Lone_Wolf
Forum Moderator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,925

Re: new PKGBUILD review - meshboard

https://wiki.archlinux.org/title/Arch_User_Repository#Prerequisites wrote:

Note: Packages in the AUR assume that the base-devel group is installed, i.e. they do not list the group's members as build dependencies explicitly.

run

$ pacman -Sg base-devel

to check which packages are in base-devel .

flex and bison definitely are.


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

#6 2021-11-03 11:36:35

willemw
Member
Registered: 2013-02-19
Posts: 113

Re: new PKGBUILD review - meshboard

That is, 'glibc', 'flex', 'bison' and 'perl' are already installed in a clean chroot (build) environment.

Offline

#7 2021-11-03 15:21:19

loqs
Member
Registered: 2014-03-06
Posts: 17,378

Re: new PKGBUILD review - meshboard

validpgpkeys=('79154EE9C4811D32B814EB88B1B3C76D76638462') # hossbeast

Were you intending to pin the git checkout to the commit of the v0.5.0 release and verify that?  The v0.5.0 tag itself is not signed?

  "meshboard::git+https://github.com/hossbeast/meshboard.git#commit=476d45762e866f5e4d413f2de949545489e7fa9f?signed"

If you pin the VCS you do not need the pkgver function.

Where can I obtain the PGP key from?

gpg --search-keys 79154EE9C4811D32B814EB88B1B3C76D76638462
gpg: data source: https://162.213.33.8:443
gpg: key "79154EE9C4811D32B814EB88B1B3C76D76638462" not found on keyserver
gpg: keyserver search failed: Not found

Possibly add the public key to files uploaded to AUR.
Edit:
You need conflicts entries as well as provides as the different packages contain the same files.

Last edited by loqs (2021-11-03 15:26:42)

Offline

#8 2021-11-03 18:56:31

hossbeast
Member
From: Seattle
Registered: 2017-06-26
Posts: 24

Re: new PKGBUILD review - meshboard

willemw wrote:

'glibc', 'flex', 'bison' and 'perl' are already installed.

The 'v' in pkgver should be removed.

conflicts=('meshboard') is missing in the meshboard-* packages.

Checksums are missing.

Ok, I thought at one point `namcap PKGBUILD` was telling me I needed to list those. Will go ahead and remove them.

Offline

#9 2021-11-03 18:57:49

hossbeast
Member
From: Seattle
Registered: 2017-06-26
Posts: 24

Re: new PKGBUILD review - meshboard

loqs wrote:
validpgpkeys=('79154EE9C4811D32B814EB88B1B3C76D76638462') # hossbeast

Were you intending to pin the git checkout to the commit of the v0.5.0 release and verify that?  The v0.5.0 tag itself is not signed?

  "meshboard::git+https://github.com/hossbeast/meshboard.git#commit=476d45762e866f5e4d413f2de949545489e7fa9f?signed"

If you pin the VCS you do not need the pkgver function.

Possibly add the public key to files uploaded to AUR.
Edit:
You need conflicts entries as well as provides as the different packages contain the same files.

Yeah, the intent is to pin the package to that tag. The build of the package uses `git` to extract / embed some version control information, so using the tar.gz sources from github download doesn't work.

Offline

#10 2021-11-04 00:14:40

hossbeast
Member
From: Seattle
Registered: 2017-06-26
Posts: 24

Re: new PKGBUILD review - meshboard

* changed make -j -> make
* added conflicts
* removed flex/bison from makedepends
* removed pkgver()
* changed source to signed tag url for $pkgver
* install -m644 for non-executable files

Note, I tried removing the "install -d" for the directories, but then the subsequent commands fail with ENOENT.

Updated PKGBUILD for meshboard

# Maintainer: hossbeast <todd DOT freed AT gmail DOT com>
# Contributor : hossbeast <todd DOT freed AT gmail DOT com>

pkgname=meshboard
pkgver=v0.5.0
pkgrel=1
pkgdesc="Synchronize the clipboard across a mesh of hosts"
conflicts=('meshboard-wayland' 'meshboard-xorg' 'meshboard-headless')
arch=('x86_64')
url="https://github.com/hossbeast/meshboard"
license=('GPL3')
depends=('wayland' 'libxfixes')
makedepends=('git' 'perl')
source=(
  "meshboard::git+https://github.com/hossbeast/meshboard#tag=${pkgver}?signed"
)
sha512sums=('SKIP')
validpgpkeys=('79154EE9C4811D32B814EB88B1B3C76D76638462') # hossbeast

build() {
  cd meshboard
  ./configure --enable-xorg --enable-wayland
  make
}

package() {
  install -m755 -d "$pkgdir/usr/bin"
  install -m755 -t "$pkgdir/usr/bin" "$srcdir/meshboard/meshboard"

  install -m755 -d "$pkgdir/usr/share/doc/$pkgname"
  install -m644 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/README.md"
  install -m644 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/CHANGELOG"

  install -m755 -d "$pkgdir/usr/share/licenses/$pkgname"
  install -m644 -t "$pkgdir/usr/share/licenses/$pkgname" "$srcdir/meshboard/LICENSE"

  install -m755 -d "$pkgdir/usr/lib/systemd/user"
  install -m644 -t "$pkgdir/usr/lib/systemd/user" "$srcdir/meshboard/systemd/meshboard.service"
}

Updated PKGBUILD for meshboard-xorg

# Maintainer: hossbeast <todd DOT freed AT gmail DOT com>
# Contributor : hossbeast <todd DOT freed AT gmail DOT com>

pkgname=meshboard-xorg
pkgver=v0.5.0
pkgrel=1
pkgdesc="Synchronize the clipboard across a mesh of hosts, with xorg integration"
provides=('meshboard')
conflicts=('meshboard' 'meshboard-wayland' 'meshboard-headless')
arch=('x86_64')
url="https://github.com/hossbeast/meshboard"
license=('GPL3')
depends=('libxfixes')
makedepends=('git' 'perl')
source=(
  "meshboard::git+https://github.com/hossbeast/meshboard#tag=${pkgver}?signed"
)
sha512sums=('SKIP')
validpgpkeys=('79154EE9C4811D32B814EB88B1B3C76D76638462') # hossbeast

build() {
  cd meshboard
  ./configure --enable-xorg
  make
}

package() {
  install -m755 -d "$pkgdir/usr/bin"
  install -m755 -t "$pkgdir/usr/bin" "$srcdir/meshboard/meshboard"

  install -m755 -d "$pkgdir/usr/share/doc/$pkgname"
  install -m644 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/README.md"
  install -m644 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/CHANGELOG"

  install -m755 -d "$pkgdir/usr/share/licenses/$pkgname"
  install -m644 -t "$pkgdir/usr/share/licenses/$pkgname" "$srcdir/meshboard/LICENSE"

  install -m755 -d "$pkgdir/usr/lib/systemd/user"
  install -m644 -t "$pkgdir/usr/lib/systemd/user" "$srcdir/meshboard/systemd/meshboard.service"
}

Updated PKGBUILD for meshboard-wayland

# Maintainer: hossbeast <todd DOT freed AT gmail DOT com>
# Contributor : hossbeast <todd DOT freed AT gmail DOT com>

pkgname=meshboard-wayland
pkgver=v0.5.0
pkgrel=1
pkgdesc="Synchronize the clipboard across a mesh of hosts, with wayland integration"
provides=('meshboard')
conflicts=('meshboard' 'meshboard-xorg' 'meshboard-headless')
arch=('x86_64')
url="https://github.com/hossbeast/meshboard"
license=('GPL3')
depends=('wayland')
makedepends=('git' 'perl')
source=(
  "meshboard::git+https://github.com/hossbeast/meshboard#tag=${pkgver}?signed"
)
sha512sums=('SKIP')
validpgpkeys=('79154EE9C4811D32B814EB88B1B3C76D76638462') # hossbeast

build() {
  cd meshboard
  ./configure --enable-wayland
  make
}

package() {
  install -m755 -d "$pkgdir/usr/bin"
  install -m755 -t "$pkgdir/usr/bin" "$srcdir/meshboard/meshboard"

  install -m755 -d "$pkgdir/usr/share/doc/$pkgname"
  install -m644 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/README.md"
  install -m644 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/CHANGELOG"

  install -m755 -d "$pkgdir/usr/share/licenses/$pkgname"
  install -m644 -t "$pkgdir/usr/share/licenses/$pkgname" "$srcdir/meshboard/LICENSE"

  install -m755 -d "$pkgdir/usr/lib/systemd/user"
  install -m644 -t "$pkgdir/usr/lib/systemd/user" "$srcdir/meshboard/systemd/meshboard.service"
}

Updated PKGBUILD for meshboard-headless

# Maintainer: hossbeast <todd DOT freed AT gmail DOT com>
# Contributor : hossbeast <todd DOT freed AT gmail DOT com>

pkgname=meshboard-headless
pkgver=v0.5.0
pkgrel=1
pkgdesc="Synchronize the clipboard across a mesh of hosts, without display server support"
provides=('meshboard')
conflicts=('meshboard' 'meshboard-wayland' 'meshboard-xorg')
arch=('x86_64')
url="https://github.com/hossbeast/meshboard"
license=('GPL3')
depends=('glibc')
makedepends=('git' 'perl')
source=(
  "meshboard::git+https://github.com/hossbeast/meshboard#tag=${pkgver}?signed"
)
sha512sums=('SKIP')
validpgpkeys=('79154EE9C4811D32B814EB88B1B3C76D76638462') # hossbeast

build() {
  cd meshboard
  ./configure
  make
}

package() {
  install -m755 -d "$pkgdir/usr/bin"
  install -m755 -t "$pkgdir/usr/bin" "$srcdir/meshboard/meshboard"

  install -m755 -d "$pkgdir/usr/share/doc/$pkgname"
  install -m644 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/README.md"
  install -m644 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/CHANGELOG"

  install -m755 -d "$pkgdir/usr/share/licenses/$pkgname"
  install -m644 -t "$pkgdir/usr/share/licenses/$pkgname" "$srcdir/meshboard/LICENSE"

  install -m755 -d "$pkgdir/usr/lib/systemd/user"
  install -m644 -t "$pkgdir/usr/lib/systemd/user" "$srcdir/meshboard/systemd/meshboard.service"
}

Offline

#11 2021-11-04 00:18:18

hossbeast
Member
From: Seattle
Registered: 2017-06-26
Posts: 24

Re: new PKGBUILD review - meshboard

willemw wrote:

Checksums are missing.

I am not sure how to generate them. makepkg -g gives me sha512sums=('SKIP').

loqs wrote:

Where can I obtain the PGP key from?

gpg --search-keys 79154EE9C4811D32B814EB88B1B3C76D76638462
gpg: data source: https://162.213.33.8:443
gpg: key "79154EE9C4811D32B814EB88B1B3C76D76638462" not found on keyserver
gpg: keyserver search failed: Not found

Possibly add the public key to files uploaded to AUR.

I am not sure the proper way to share it. Should I add it to the Release metadata on github?

Offline

#12 2021-11-04 00:34:43

loqs
Member
Registered: 2014-03-06
Posts: 17,378

Re: new PKGBUILD review - meshboard

hossbeast wrote:
willemw wrote:

Checksums are missing.

I am not sure how to generate them. makepkg -g gives me sha512sums=('SKIP').

VCS repositories can not be check summed, at least not reproducibly hence skip is correct.

hossbeast wrote:
loqs wrote:

Where can I obtain the PGP key from?

gpg --search-keys 79154EE9C4811D32B814EB88B1B3C76D76638462
gpg: data source: https://162.213.33.8:443
gpg: key "79154EE9C4811D32B814EB88B1B3C76D76638462" not found on keyserver
gpg: keyserver search failed: Not found

Possibly add the public key to files uploaded to AUR.

I am not sure the proper way to share it. Should I add it to the Release metadata on github?

There is no defined mechanism that I know of.  You can add it to a gpg keyserver or the a file accompanying the PKGBUILD or a file on github.  As long as it allows a user to obtain the key.

Last edited by loqs (2021-11-04 00:35:03)

Offline

#13 2021-11-04 01:18:05

hossbeast
Member
From: Seattle
Registered: 2017-06-26
Posts: 24

Offline

#14 2021-11-04 01:33:29

loqs
Member
Registered: 2014-03-06
Posts: 17,378

Re: new PKGBUILD review - meshboard

meshboard-wayland failed to build in a clean chroot.  meshboard-wayland-v0.5.0-1-x86_64-build.log

# generated by ./configure --enable-wayland
ROOT_PATH=.
SRC_PATH=./src
BUILD_PATH=.
CONFIG_WAYLAND=y
# CONFIG_XORG not set
# CONFIG_SAN not set
'./makefile' -> './src/makefile'
make: Entering directory '/build/meshboard-wayland/src/meshboard'
flex=`which flex` bm_source=./src/args/args.l bm_target0=args/args.lex.c bm_target1=args/args.lex.h ./bam/flex.bam
bison=`which bison` bm_source=./src/args/args.y bm_target0=args/args.tab.c bm_target1=args/args.tab.h ./bam/bison.bam
flex=`which flex` bm_source=./src/config_parser/config.l bm_target0=config_parser/config.lex.c bm_target1=config_parser/config.lex.h ./bam/flex.bam
bison=`which bison` bm_source=./src/config_parser/config.y bm_target0=config_parser/config.tab.c bm_target1=config_parser/config.tab.h ./bam/bison.bam
cat config.mak | grep -v '^#' | sed -e 's/^/#define /' | sed -e 's/=/ /' > config-defs.h
make: './src/sigtable.h' is up to date.
bm_target0=./git-state.c bm_target1=./git-state.h	git=`which git` ./bam/git-state.bam
bm_source=args/args.lex.h bm_target0=args/args.states.c bm_target1=args/args.states.h ./bam/states.bam
bm_source=config_parser/config.lex.h bm_target0=config_parser/config.states.c bm_target1=config_parser/config.states.h ./bam/states.bam
bm_source0=args/args.tab.c bm_source1=args/args.tab.h bm_target0=args/args.tokens.c bm_target1=args/args.tokens.h ./bam/tokens.bam
bm_source0=config_parser/config.tab.c bm_source1=config_parser/config.tab.h bm_target0=config_parser/config.tokens.c bm_target1=config_parser/config.tokens.h ./bam/tokens.bam
make: Leaving directory '/build/meshboard-wayland/src/meshboard'
make: Entering directory '/build/meshboard-wayland/src/meshboard'
wayland-scanner private-code ./src/wayland_protocols/wlr-data-control.xml wayland_protocols/wlr-data-control.c
wayland-scanner client-header ./src/wayland_protocols/wlr-data-control.xml wayland_protocols/wlr-data-control.h
make: Leaving directory '/build/meshboard-wayland/src/meshboard'
cc -o main.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/main.c
cc -o git-state.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source git-state.c
cc -o sigtable.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/sigtable.c
cc -o args/args.lex.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source args/args.lex.c
cc -o args/args.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/args/args.c
cc -o args/args.states.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source args/args.states.c
cc -o args/args.tab.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source args/args.tab.c
cc -o args/args.tokens.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source args/args.tokens.c
cc -o article/article.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/article/article.c
cc -o config/config.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/config/config.c
cc -o config_parser/config.lex.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source config_parser/config.lex.c
cc -o config_parser/config.states.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source config_parser/config.states.c
cc -o config_parser/config.tab.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source config_parser/config.tab.c
cc -o config_parser/config.tokens.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source config_parser/config.tokens.c
cc -o config_parser/config_parser.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/config_parser/config_parser.c
cc -o file_node/file_node.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/file_node/file_node.c
cc -o file_sink/file_sink.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/file_sink/file_sink.c
cc -o file_source/file_source.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/file_source/file_source.c
cc -o handler/handler.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/handler/handler.c
cc -o pubkey/pubkey.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/pubkey/pubkey.c
cc -o monitor_thread/monitor_thread.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/monitor_thread/monitor_thread.c
cc -o node/node.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/node/node.c
cc -o params/params.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/params/params.c
cc -o sigset/sigset.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/sigset/sigset.c
cc -o recency/recency.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/recency/recency.c
cc -o socket_util/socket_util.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/socket_util/socket_util.c
cc -o tcp_client/tcp_client.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/tcp_client/tcp_client.c
cc -o tcp_node/tcp_node.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/tcp_node/tcp_node.c
cc -o tcp_server/tcp_server.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/tcp_server/tcp_server.c
cc -o udp_node/udp_node.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/udp_node/udp_node.c
cc -o udp_sink/udp_sink.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/udp_sink/udp_sink.c
cc -o udp_source/udp_source.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/udp_source/udp_source.c
cc -o xlinux/xepoll.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/xlinux/xepoll.c
cc -o xlinux/xfcntl.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/xlinux/xfcntl.c
cc -o xlinux/xinet.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/xlinux/xinet.c
cc -o xlinux/xinotify.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/xlinux/xinotify.c
In file included from ./src/config_parser/config.y:21,
                 from ./src/config_parser/config_parser.c:11:
./src/xorg_node/xorg_node.h:7:10: fatal error: X11/Xlib.h: No such file or directory
    7 | #include <X11/Xlib.h>
      |          ^~~~~~~~~~~~
compilation terminated.
cc -o xlinux/xmman.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/xlinux/xmman.c
cc -o xlinux/xpthread.o -c -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -m64 -O1 -ggdb3 -Wall -Werror -D_GNU_SOURCE -fno-builtin-log -Wmissing-prototypes -Wno-misleading-indentation -Wno-trigraphs -Wno-stringop-overread -Wno-array-bounds -fno-common -include ./config-defs.h -I. -I./args -I./config_parser -I./wayland_protocols -I./src -I./src/arch/x86 -I./src/args -I./src/article -I./src/config -I./src/config_parser -I./src/file_node -I./src/file_sink -I./src/file_source -I./src/handler -I./src/pubkey -I./src/monitor_thread -I./src/node -I./src/params -I./src/sigset -I./src/recency -I./src/socket_util -I./src/tcp_client -I./src/tcp_node -I./src/tcp_server -I./src/udp_node -I./src/udp_sink -I./src/udp_source -I./src/xlinux -I./src/common -I./src/valyria -I./src/yyutil -I./src/wayland_node -I./src/wayland_sink -I./src/wayland_source -I./src/xorg_node -I./src/xorg_sink -I./src/xorg_source ./src/xlinux/xpthread.c
In file included from ./src/config_parser/config.y:21,
                 from config_parser/config.tab.c:106:
./src/xorg_node/xorg_node.h:7:10: fatal error: X11/Xlib.h: No such file or directory
    7 | #include <X11/Xlib.h>
      |          ^~~~~~~~~~~~
compilation terminated.
make: *** [makefile:177: config_parser/config_parser.o] Error 1
make: *** Waiting for unfinished jobs....
make: *** [makefile:177: config_parser/config.tab.o] Error 1
In file included from ./src/node/node.c:21:
./src/xorg_node/xorg_node.h:7:10: fatal error: X11/Xlib.h: No such file or directory
    7 | #include <X11/Xlib.h>
      |          ^~~~~~~~~~~~
compilation terminated.
make: *** [makefile:177: node/node.o] Error 1
In file included from ./src/config_parser/config.y:21,
                 from ./src/config_parser/config.l:8:
./src/xorg_node/xorg_node.h:7:10: fatal error: X11/Xlib.h: No such file or directory
    7 | #include <X11/Xlib.h>
      |          ^~~~~~~~~~~~
compilation terminated.

Offline

#15 2021-11-04 04:21:23

hossbeast
Member
From: Seattle
Registered: 2017-06-26
Posts: 24

Re: new PKGBUILD review - meshboard

Huh. Ok I was able to repro using the method explained here https://wiki.archlinux.org/title/Develo … nience_way

I will need to make some code changes in upstream to fix this.

Offline

#16 2021-11-04 07:00:41

willemw
Member
Registered: 2013-02-19
Posts: 113

Re: new PKGBUILD review - meshboard

Remove 'conflicts' from meshboard. Remove 'perl'. You can remove the `Contributor` line. You can do 'git+$url' in 'sources'.

'v' still needs to be removed from pkgver. This can be done without a pkgver()  ('pkgver=' and '_pkgver=') or with a pkgver() ('_pkgver=', pkgver=0 and 'pkgver()').

Offline

#17 2021-11-04 11:31:50

Lone_Wolf
Forum Moderator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,925

Re: new PKGBUILD review - meshboard

willemw wrote:

Remove 'perl'

Although perl is currently pulled in when installing base-devel this is an indirect dependency .
There's absolutely no guarantee installing base-devel will keep pulling perl in the future.

Hossbeast, based on https://github.com/hossbeast/meshboard#dependencies I strongly advise to keep perl in makedepends .

Last edited by Lone_Wolf (2021-11-04 12:07:19)


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

#18 2021-11-04 12:02:52

willemw
Member
Registered: 2013-02-19
Posts: 113

Re: new PKGBUILD review - meshboard

It builds in a clean chroot environment without perl. Perl is an (indirect) dependency of packages in base-devel. Perl does not have to be declared in PKGBUILD.

The best and simplest way of removing the 'v' from the version number is: 'pkgver=0.5.0' and 'tag=v${pkgver}' in 'sources'.

Last edited by willemw (2021-11-04 12:06:23)

Offline

#19 2021-11-04 12:06:59

Lone_Wolf
Forum Moderator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,925

Re: new PKGBUILD review - meshboard

Willemw, please re-read my full post.

I will emphasise the most important part.

Last edited by Lone_Wolf (2021-11-04 12:07:32)


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

#20 2021-11-04 12:41:31

willemw
Member
Registered: 2013-02-19
Posts: 113

Re: new PKGBUILD review - meshboard

@Lone_Wolf: Sorry, missed that remark. Learned something new.

Offline

#21 2021-11-05 02:47:46

hossbeast
Member
From: Seattle
Registered: 2017-06-26
Posts: 24

Re: new PKGBUILD review - meshboard

willemw wrote:

'v' still needs to be removed from pkgver.

What is the basis of this guideline?

From https://wiki.archlinux.org/title/PKGBUILD#pkgver I see

This should be the same as the version published by the author of the upstream software. It can contain letters, numbers, periods and underscores, but not a hyphen (-)

Anecdotally, on my machine I have this package installed which has a "v" version

% pacman -Qi python-themer-git
Version         : v1.8.4.r0.g473cee2-1

Offline

#22 2021-11-05 02:58:33

hossbeast
Member
From: Seattle
Registered: 2017-06-26
Posts: 24

Re: new PKGBUILD review - meshboard

* fixed the problem with failing to build in chroot
* removed Contributor line
* removed conflicts from meshboard

PKGBUILD for meshboard

# Maintainer: hossbeast <todd DOT freed AT gmail DOT com>

pkgname=meshboard
pkgver=v0.5.1
pkgrel=1
pkgdesc="Synchronize the clipboard across a mesh of hosts"
arch=('x86_64')
url="https://github.com/hossbeast/meshboard"
license=('GPL3')
depends=('wayland' 'libxfixes')
makedepends=('git' 'perl')
source=(
  "meshboard::git+https://github.com/hossbeast/meshboard#tag=${pkgver}?signed"
)
sha512sums=('SKIP')
validpgpkeys=('79154EE9C4811D32B814EB88B1B3C76D76638462') # hossbeast

build() {
  pwd
  cd meshboard
  ./configure --enable-xorg --enable-wayland
  make
}

package() {
  install -m755 -d "$pkgdir/usr/bin"
  install -m755 -t "$pkgdir/usr/bin" "$srcdir/meshboard/meshboard"

  install -m755 -d "$pkgdir/usr/share/doc/$pkgname"
  install -m644 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/README.md"
  install -m644 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/CHANGELOG"

  install -m755 -d "$pkgdir/usr/share/licenses/$pkgname"
  install -m644 -t "$pkgdir/usr/share/licenses/$pkgname" "$srcdir/meshboard/LICENSE"

  install -m755 -d "$pkgdir/usr/lib/systemd/user"
  install -m644 -t "$pkgdir/usr/lib/systemd/user" "$srcdir/meshboard/systemd/meshboard.service"
}

PKGBUILD for meshboard-wayland

# Maintainer: hossbeast <todd DOT freed AT gmail DOT com>

pkgname=meshboard-wayland
pkgver=v0.5.1
pkgrel=1
pkgdesc="Synchronize the clipboard across a mesh of hosts, with wayland integration"
provides=('meshboard')
conflicts=('meshboard' 'meshboard-xorg' 'meshboard-headless')
arch=('x86_64')
url="https://github.com/hossbeast/meshboard"
license=('GPL3')
depends=('wayland')
makedepends=('git' 'perl')
source=(
  "meshboard::git+https://github.com/hossbeast/meshboard#tag=${pkgver}?signed"
)
sha512sums=('SKIP')
validpgpkeys=('79154EE9C4811D32B814EB88B1B3C76D76638462') # hossbeast

build() {
  cd meshboard
  ./configure --enable-wayland
  make
}

package() {
  install -m755 -d "$pkgdir/usr/bin"
  install -m755 -t "$pkgdir/usr/bin" "$srcdir/meshboard/meshboard"

  install -m755 -d "$pkgdir/usr/share/doc/$pkgname"
  install -m644 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/README.md"
  install -m644 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/CHANGELOG"

  install -m755 -d "$pkgdir/usr/share/licenses/$pkgname"
  install -m644 -t "$pkgdir/usr/share/licenses/$pkgname" "$srcdir/meshboard/LICENSE"

  install -m755 -d "$pkgdir/usr/lib/systemd/user"
  install -m644 -t "$pkgdir/usr/lib/systemd/user" "$srcdir/meshboard/systemd/meshboard.service"
}

PKGBUILD for meshboard-xorg

# Maintainer: hossbeast <todd DOT freed AT gmail DOT com>

pkgname=meshboard-xorg
pkgver=v0.5.1
pkgrel=1
pkgdesc="Synchronize the clipboard across a mesh of hosts, with xorg integration"
provides=('meshboard')
conflicts=('meshboard' 'meshboard-wayland' 'meshboard-headless')
arch=('x86_64')
url="https://github.com/hossbeast/meshboard"
license=('GPL3')
depends=('libxfixes')
makedepends=('git' 'perl')
source=(
  "meshboard::git+https://github.com/hossbeast/meshboard#tag=${pkgver}?signed"
)
sha512sums=('SKIP')
validpgpkeys=('79154EE9C4811D32B814EB88B1B3C76D76638462') # hossbeast

build() {
  cd meshboard
  ./configure --enable-xorg
  make
}

package() {
  install -m755 -d "$pkgdir/usr/bin"
  install -m755 -t "$pkgdir/usr/bin" "$srcdir/meshboard/meshboard"

  install -m755 -d "$pkgdir/usr/share/doc/$pkgname"
  install -m644 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/README.md"
  install -m644 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/CHANGELOG"

  install -m755 -d "$pkgdir/usr/share/licenses/$pkgname"
  install -m644 -t "$pkgdir/usr/share/licenses/$pkgname" "$srcdir/meshboard/LICENSE"

  install -m755 -d "$pkgdir/usr/lib/systemd/user"
  install -m644 -t "$pkgdir/usr/lib/systemd/user" "$srcdir/meshboard/systemd/meshboard.service"
}

PKGBUILD for meshboard-headless

# Maintainer: hossbeast <todd DOT freed AT gmail DOT com>

pkgname=meshboard-headless
pkgver=v0.5.1
pkgrel=1
pkgdesc="Synchronize the clipboard across a mesh of hosts, without display server support"
provides=('meshboard')
conflicts=('meshboard' 'meshboard-wayland' 'meshboard-xorg')
arch=('x86_64')
url="https://github.com/hossbeast/meshboard"
license=('GPL3')
depends=('glibc')
makedepends=('git' 'perl')
source=(
  "meshboard::git+https://github.com/hossbeast/meshboard#tag=${pkgver}?signed"
)
sha512sums=('SKIP')
validpgpkeys=('79154EE9C4811D32B814EB88B1B3C76D76638462') # hossbeast

build() {
  cd meshboard
  ./configure
  make
}

package() {
  install -m755 -d "$pkgdir/usr/bin"
  install -m755 -t "$pkgdir/usr/bin" "$srcdir/meshboard/meshboard"

  install -m755 -d "$pkgdir/usr/share/doc/$pkgname"
  install -m644 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/README.md"
  install -m644 -t "$pkgdir/usr/share/doc/$pkgname" "$srcdir/meshboard/CHANGELOG"

  install -m755 -d "$pkgdir/usr/share/licenses/$pkgname"
  install -m644 -t "$pkgdir/usr/share/licenses/$pkgname" "$srcdir/meshboard/LICENSE"

  install -m755 -d "$pkgdir/usr/lib/systemd/user"
  install -m644 -t "$pkgdir/usr/lib/systemd/user" "$srcdir/meshboard/systemd/meshboard.service"
}

Offline

#23 2021-11-06 07:05:24

willemw
Member
Registered: 2013-02-19
Posts: 113

Re: new PKGBUILD review - meshboard

Also anecdotally:

Removing 'v' is mentioned in the "VCS package guidelines" Wiki. So the 'python-themer-git' version should not start with a 'v'. For non-VCS packages, I'm not sure if it is mentioned in the Wiki. The only reference to version numbering rules for non-VCS packages is the pkgver() tip in https://wiki.archlinux.org/title/PKGBUILD#pkgver, which refers again to the "VCS package guidelines" Wiki.

Can you find any package (in the official repos) that has a version starting with a 'v'? Why would removing 'v' only apply to VCS packages?

Offline

#24 2021-11-06 15:52:00

hossbeast
Member
From: Seattle
Registered: 2017-06-26
Posts: 24

Re: new PKGBUILD review - meshboard

willemw wrote:

Can you find any package (in the official repos) that has a version starting with a 'v'?

No. I also looked for a few packages that specifically have 'v' versions in upstream, but non-'v' versions in arch linux, and I found a bunch. So I guess this is something of an unwritten rule.

# all of these have 'v' tags on github
% pacman -Q vim git zstd
vim 8.2.3441-1
git 2.33.1-1
zstd 1.5.0-1

They do seem to compare correctly, just saying ..

% vercmp v0.5.0 v0.5.1
-1

% vercmp v0.5.1 v0.5.0
1

% vercmp v0.5.1 v0.5.1
0

I will drop the 'v' from the pkgver. After that, should I go ahead and publish these?

Offline

#25 2021-11-06 16:08:50

willemw
Member
Registered: 2013-02-19
Posts: 113

Re: new PKGBUILD review - meshboard

Looks ready to publish after:

Removing 'glibc'.

Changing conflicts to 'conflicts=('meshboard') in the meshboard-* packages. It's again clearly documented in the"VCS package guidelines" Wiki. It is also documented for non-VCS packages, but maybe not as clearly stated as in the "VCS package guidelines" Wiki?

Offline

Board footer

Powered by FluxBB