Package Details: purple-gowhatsapp-git 1.17.0-1

Git Clone URL: https://aur.archlinux.org/purple-gowhatsapp-git.git (read-only, click to copy)
Package Base: purple-gowhatsapp-git
Description: A libpurple/Pidgin plugin for WhatsApp, powered by whatsmeow
Upstream URL: https://github.com/hoehermann/purple-gowhatsapp
Keywords: chat libpurple library pidgin plugin purple whatsapp
Licenses: GPLv3
Conflicts: purple-gowhatsapp
Provides: purple-gowhatsapp
Submitter: Network_Jack
Maintainer: hoehermann
Last Packager: hoehermann
Votes: 10
Popularity: 0.89
First Submitted: 2019-11-03 21:33 (UTC)
Last Updated: 2025-05-11 22:15 (UTC)

Dependencies (9)

Required by (0)

Sources (1)

Latest Comments

1 2 Next › Last »

astehlik commented on 2025-09-18 16:32 (UTC) (edited on 2025-09-18 16:34 (UTC) by astehlik)

Go seems to install its module files by default with non writable permissions 0444.

This causes issues with the cache cleanup of AUR Helpers like yay - for example yay tries to remove ~/.cache/yay/purple-gowhatsapp-git/src/purple-gowhatsapp/build/_go/pkg/mod/google.golang.org/protobuf@v1.36.9/runtime/protolazy/protolazy.go - which fails.

I looked around a bit and other packages solve this problem by adding the modcacherw flag (see https://go.dev/ref/mod#build-commands) to the download commands (for example yay itsself: https://github.com/Jguer/yay/blob/next/Makefile#L27)

I was able to solve this in the purple-gowhatsapp-git by setting an env variable in line 31 of the PKGBUILD file:

GOFLAGS=-modcacherw cmake --build build --target download-modules

I'm not sure if this is the best solution or if this is something that should be integrated in the cmake config.

PS, thank you for your lightspeed merge of my PR and maintaining this package :)

hoehermann commented on 2022-07-13 20:25 (UTC)

Thank you for the report, sotitrox. The issue has been fixed upstream.

sotitrox commented on 2022-07-13 17:15 (UTC)

I got this in the build process

...

    go: downloading github.com/google/go-cmp v0.5.5
    go: downloading golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543
    go: downloading github.com/mdp/qrterminal v1.0.1
    [ 23%] Generating purple-go-whatsapp.a, purple-go-whatsapp.h
    # command-line-arguments
    ./send_message.go:53:107: cannot use ts (variable of type whatsmeow.SendResponse) as type time.Time in argument to purple_display_text_message
    make[2]: *** [src/go/CMakeFiles/purple-go-whatsapp.dir/build.make:87: src/go/purple-go-whatsapp.a] Error 2
    make[1]: *** [CMakeFiles/Makefile2:143: src/go/CMakeFiles/purple-go-whatsapp.dir/all] Error 2
    make: *** [Makefile:136: all] Error 2
    ==> ERROR: Se produjo un fallo en build().
        Cancelando...

gpc commented on 2022-03-01 14:20 (UTC)

The whatsmeow branch is now the main branch, with this PKGBUILD provided:

https://github.com/hoehermann/purple-gowhatsapp/blob/whatsmeow/PKGBUILD

sotitrox commented on 2022-02-10 21:05 (UTC)

yes, it's working, but don't work for those that activate the new beta multi-device on whatsapp, if you activate that capacity, use the "whatsmeow" branch

gpc commented on 2022-02-05 09:36 (UTC) (edited on 2022-02-05 09:38 (UTC) by gpc)

I believe this plugin currently does not work, except for a beta version using whatsmeow. See https://github.com/hoehermann/purple-gowhatsapp/issues/90 and https://github.com/hoehermann/purple-gowhatsapp/tree/whatsmeow

Industrial commented on 2021-04-18 19:41 (UTC)

Hi!

$ yay -S purple-gowhatsapp-git
:: Checking for conflicts...
:: Checking for inner conflicts...
[Aur:1]  purple-gowhatsapp-git-r157.be9ccd1-1

:: Downloaded PKGBUILD (1/1): purple-gowhatsapp-git
  1 purple-gowhatsapp-git                    (Build Files Exist)
==> Diffs to show?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==>
:: (1/1) Parsing SRCINFO: purple-gowhatsapp-git
==> Making package: purple-gowhatsapp-git r157.be9ccd1-1 (Sun 18 Apr 2021 09:39:22 PM CEST)
==> Retrieving sources...
  -> Cloning purple-gowhatsapp git repo...
Cloning into bare repository '/home/tom/.cache/yay/purple-gowhatsapp-git/purple-gowhatsapp'...
remote: Enumerating objects: 694, done.
remote: Counting objects: 100% (35/35), done.
remote: Compressing objects: 100% (19/19), done.
remote: Total 694 (delta 16), reused 27 (delta 14), pack-reused 659
Receiving objects: 100% (694/694), 310.92 KiB | 2.01 MiB/s, done.
Resolving deltas: 100% (420/420), done.
==> Validating source files with sha256sums...
    purple-gowhatsapp ... Skipped
==> Making package: purple-gowhatsapp-git r157.be9ccd1-1 (Sun 18 Apr 2021 09:39:24 PM CEST)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Updating purple-gowhatsapp git repo...
Fetching origin
==> Validating source files with sha256sums...
    purple-gowhatsapp ... Skipped
==> Removing existing $srcdir/ directory...
==> Extracting sources...
  -> Creating working copy of purple-gowhatsapp git repo...
Cloning into 'purple-gowhatsapp'...
done.
==> Starting prepare()...
fatal: not a git repository: '/home/tom/.cache/yay/purple-gowhatsapp-git/src/gopath/src/github.com/Rhymen/go-whatsapp/.git'
go get -u github.com/skip2/go-qrcode
go: downloading github.com/skip2/go-qrcode v0.0.0-20200617195104-da1b6568686e
go get -u github.com/gabriel-vasile/mimetype
go: downloading github.com/gabriel-vasile/mimetype v1.2.0
go get -u github.com/Rhymen/go-whatsapp
go: downloading github.com/Rhymen/go-whatsapp v0.1.1
go: downloading github.com/gorilla/websocket v1.4.1
go: downloading github.com/pkg/errors v0.8.1
go: downloading github.com/golang/protobuf v1.3.0
go: downloading golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2
go: downloading github.com/pkg/errors v0.9.1
go: downloading github.com/gorilla/websocket v1.4.2
go: downloading github.com/golang/protobuf v1.5.2
go: downloading golang.org/x/crypto v0.0.0-20210415154028-4f45737414dc
go: downloading google.golang.org/protobuf v1.26.0
touch -d "" /home/tom/.cache/yay/purple-gowhatsapp-git/src/gopath/pkg/linux_amd64/github.com/Rhymen/go-whatsapp.a
touch: cannot touch '/home/tom/.cache/yay/purple-gowhatsapp-git/src/gopath/pkg/linux_amd64/github.com/Rhymen/go-whatsapp.a': No such file or directory
make: *** [Makefile:45: update-dep] Error 1
==> ERROR: A failure occurred in prepare().
    Aborting...
error making: purple-gowhatsapp-git

mederel commented on 2021-03-21 13:23 (UTC)

Along with @PedroHLC indication had also to patch the removal of the failing touch and add another envvar on build. Here the full patch:

diff --git a/2021-03-21-failing-touch.patch b/2021-03-21-failing-touch.patch
new file mode 100644
index 0000000..76e3184
--- /dev/null
+++ b/2021-03-21-failing-touch.patch
@@ -0,0 +1,12 @@
+diff --git a/Makefile b/Makefile
+index 99d01ee..edcecff 100644
+--- a/Makefile
++++ b/Makefile
+@@ -42,7 +42,6 @@ update-dep:
+       $(GO) get -u github.com/skip2/go-qrcode^M
+       $(GO) get -u github.com/gabriel-vasile/mimetype^M
+       $(GO) get -u github.com/Rhymen/go-whatsapp^M
+-      touch -d "$(shell $(GIT) --git-dir="$(GO_WHATSAPP_GIT)" log -1 --date=rfc --format=%cd)" $(GO_WHATSAPP_A)^M
+ ^M
+ # TODO: add targets for all go dependencies^M
+ $(GO_WHATSAPP_A):^M
diff --git a/PKGBUILD b/PKGBUILD
index 4e9c290..5c26fc0 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,7 +1,7 @@
 # Maintainer: GI_Jack <GI_Jack@hackermail.com>
 pkgname=purple-gowhatsapp-git
 _pkgname=purple-gowhatsapp
-pkgver=r157.be9ccd1
+pkgver=r165.b84fdd7
 pkgrel=1
 pkgdesc="A libpurple/Pidgin plugin for WhatsApp Web, Powered by go-whatsapp"
 arch=('x86_64' 'i686')
@@ -13,9 +13,11 @@ makedepends=('git' 'go')
 provides=("${_pkgname}")
 conflicts=("${_pkgname}")
 install=
-source=("${_pkgname}::git+https://github.com/hoehermann/purple-gowhatsapp.git")
+source=("${_pkgname}::git+https://github.com/hoehermann/purple-gowhatsapp.git"
+        "2021-03-21-failing-touch.patch")
 noextract=()
-sha256sums=('SKIP')
+sha256sums=('SKIP'
+            'be803571cffbe785267b06fc9d1f9fe23c14aacd3c2f713691deb8d25e477f70')

 # Please refer to the 'USING VCS SOURCES' section of the PKGBUILD man page for
 # a description of each element in the source array.
@@ -27,16 +29,17 @@ pkgver() {

 prepare() {
   cd "$srcdir/${_pkgname}"
-  GOPATH="$srcdir/gopath" make update-dep
+  patch --forward --strip=1 --input="${srcdir}/2021-03-21-failing-touch.patch"
+  GOPATH="$srcdir/gopath" make GOPATH="$srcdir/gopath" update-dep
 }

 build() {
   cd "$srcdir/${_pkgname}"
-  GOPATH="$srcdir/gopath" make
+  GOPATH="$srcdir/gopath" make GOPATH="$srcdir/gopath" GO111MODULE=auto
 }


 package() {
   cd "${srcdir}/${_pkgname}"
-  GOPATH="$srcdir/gopath" make DESTDIR="$pkgdir/" install
+  GOPATH="$srcdir/gopath" make DESTDIR="$pkgdir/" GOPATH="$srcdir/gopath" install
 }

nobicycle commented on 2020-09-27 06:16 (UTC)

Not sure how PedroHLC got it to compile, but:

$ yay -S purple-gowhatsapp-git :: Checking for conflicts... :: Checking for inner conflicts... [Aur:1] purple-gowhatsapp-git-r157.be9ccd1-1

:: Downloaded PKGBUILD (1/1): purple-gowhatsapp-git 1 purple-gowhatsapp-git (Build Files Exist) ==> Diffs to show? ==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4) ==> :: (1/1) Parsing SRCINFO: purple-gowhatsapp-git ==> Making package: purple-gowhatsapp-git r157.be9ccd1-1 (Sun 27 Sep 2020 02:13:23 PM WITA) ==> Retrieving sources... -> Cloning purple-gowhatsapp git repo... Cloning into bare repository '/home/me/System/Manjaro/yay/purple-gowhatsapp-git/purple-gowhatsapp'... remote: Enumerating objects: 7, done. remote: Counting objects: 100% (7/7), done. remote: Compressing objects: 100% (7/7), done. remote: Total 666 (delta 2), reused 2 (delta 0), pack-reused 659 Receiving objects: 100% (666/666), 297.86 KiB | 137.00 KiB/s, done. Resolving deltas: 100% (406/406), done. ==> Validating source files with sha256sums... purple-gowhatsapp ... Skipped ==> Making package: purple-gowhatsapp-git r157.be9ccd1-1 (Sun 27 Sep 2020 02:13:29 PM WITA) ==> Checking runtime dependencies... ==> Checking buildtime dependencies... ==> Retrieving sources... -> Updating purple-gowhatsapp git repo... Fetching origin ==> Validating source files with sha256sums... purple-gowhatsapp ... Skipped ==> Removing existing $srcdir/ directory... ==> Extracting sources... -> Creating working copy of purple-gowhatsapp git repo... Cloning into 'purple-gowhatsapp'... done. ==> Starting prepare()... make: go: Permission denied make: go: Permission denied make: go: Permission denied make: go: Permission denied fatal: not a git repository: '/home/me/System/Manjaro/yay/purple-gowhatsapp-git/src/gopath/src/github.com/Rhymen/go-whatsapp/.git' make: go: Permission denied make: go: Permission denied go get -u github.com/skip2/go-qrcode make: go: Permission denied make: *** [Makefile:42: update-dep] Error 127 ==> ERROR: A failure occurred in prepare(). Aborting... error making: purple-gowhatsapp-git