From 75ac22f85890fe0e068f1d64af2d3b20b75ed9e5 Mon Sep 17 00:00:00 2001 From: cinerea0 Date: Thu, 7 Oct 2021 14:52:40 -0400 Subject: [PATCH 1/3] New package: protobuf-go-1.27.1 --- srcpkgs/protobuf-go/template | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 srcpkgs/protobuf-go/template diff --git a/srcpkgs/protobuf-go/template b/srcpkgs/protobuf-go/template new file mode 100644 index 000000000000..8f4bddbbae8d --- /dev/null +++ b/srcpkgs/protobuf-go/template @@ -0,0 +1,17 @@ +# Template file for 'protobuf-go' +pkgname=protobuf-go +version=1.27.1 +revision=1 +build_style=go +go_import_path="google.golang.org/protobuf" +go_package="${go_import_path}/cmd/protoc-gen-go" +short_desc="Go support for Google's protocol buffers" +maintainer="cinerea0 " +license="BSD-3-Clause" +homepage="https://github.com/protocolbuffers/protobuf-go" +distfiles="https://github.com/protocolbuffers/protobuf-go/archive/refs/tags/v${version}.tar.gz" +checksum=3ec41a8324431e72f85e0dc0c2c098cc14c3cb1ee8820996c8f46afca2d65609 + +post_install() { + vlicense LICENSE +} From 32f2a9b8312923a12c314ab2f24a2509fb9e4be5 Mon Sep 17 00:00:00 2001 From: cinerea0 Date: Thu, 7 Oct 2021 15:01:18 -0400 Subject: [PATCH 2/3] New package: protoc-gen-go-grpc-1.1.0 --- srcpkgs/protoc-gen-go-grpc/template | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 srcpkgs/protoc-gen-go-grpc/template diff --git a/srcpkgs/protoc-gen-go-grpc/template b/srcpkgs/protoc-gen-go-grpc/template new file mode 100644 index 000000000000..456bd3d54a66 --- /dev/null +++ b/srcpkgs/protoc-gen-go-grpc/template @@ -0,0 +1,14 @@ +# Template file for 'protoc-gen-go-grpc' +pkgname=protoc-gen-go-grpc +version=1.1.0 +revision=1 +wrksrc="grpc-go-cmd-${pkgname}-v${version}" +build_wrksrc="cmd/protoc-gen-go-grpc" +build_style=go +go_import_path="google.golang.org/grpc/cmd/protoc-gen-go-grpc" +short_desc="Generates Go language bindings of protobuf services for gRPC" +maintainer="cinerea0 " +license="Apache-2.0" +homepage="https://github.com/grpc/grpc-go/tree/master/cmd/protoc-gen-go-grpc" +distfiles="https://github.com/grpc/grpc-go/archive/refs/tags/cmd/protoc-gen-go-grpc/v${version}.tar.gz" +checksum=9aa1f1f82b45a409c25eb7c06c6b4d2a41eb3c9466ebd808fe6d3dc2fb9165b3 From 3e226516af1e12c0247837e67e9f8bb47acc273c Mon Sep 17 00:00:00 2001 From: cinerea0 Date: Thu, 7 Oct 2021 15:08:11 -0400 Subject: [PATCH 3/3] New package: opensnitch-1.4.1 --- srcpkgs/opensnitch/files/opensnitchd/run | 4 +++ srcpkgs/opensnitch/patches/cc-check.patch | 13 +++++++++ srcpkgs/opensnitch/patches/go-sum.patch | 14 ++++++++++ srcpkgs/opensnitch/patches/musl-int.patch | 16 +++++++++++ srcpkgs/opensnitch/patches/protoc-gen.patch | 27 ++++++++++++++++++ srcpkgs/opensnitch/template | 31 +++++++++++++++++++++ 6 files changed, 105 insertions(+) create mode 100644 srcpkgs/opensnitch/files/opensnitchd/run create mode 100644 srcpkgs/opensnitch/patches/cc-check.patch create mode 100644 srcpkgs/opensnitch/patches/go-sum.patch create mode 100644 srcpkgs/opensnitch/patches/musl-int.patch create mode 100644 srcpkgs/opensnitch/patches/protoc-gen.patch create mode 100644 srcpkgs/opensnitch/template diff --git a/srcpkgs/opensnitch/files/opensnitchd/run b/srcpkgs/opensnitch/files/opensnitchd/run new file mode 100644 index 000000000000..2c1855eef621 --- /dev/null +++ b/srcpkgs/opensnitch/files/opensnitchd/run @@ -0,0 +1,4 @@ +#!/bin/sh + +[ -r conf ] && . ./conf +exec opensnitchd ${OPTS:--rules-path /etc/opensnitchd/rules} diff --git a/srcpkgs/opensnitch/patches/cc-check.patch b/srcpkgs/opensnitch/patches/cc-check.patch new file mode 100644 index 000000000000..004f0861a7d9 --- /dev/null +++ b/srcpkgs/opensnitch/patches/cc-check.patch @@ -0,0 +1,13 @@ +diff --git a/daemon/netfilter/queue.go b/daemon/netfilter/queue.go +index 3797486baf..4ee09d68b5 100644 +--- a/daemon/netfilter/queue.go ++++ b/daemon/netfilter/queue.go +@@ -3,7 +3,7 @@ package netfilter + /* + #cgo pkg-config: libnetfilter_queue + #cgo CFLAGS: -Wall -I/usr/include +-#cgo LDFLAGS: -L/usr/lib64/ -ldl ++#cgo LDFLAGS: -L/usr/lib64 -ldl + + #include "queue.h" + */ diff --git a/srcpkgs/opensnitch/patches/go-sum.patch b/srcpkgs/opensnitch/patches/go-sum.patch new file mode 100644 index 000000000000..19537e68545a --- /dev/null +++ b/srcpkgs/opensnitch/patches/go-sum.patch @@ -0,0 +1,14 @@ +# Need to generate go.sum otherwise we get errors +# https://github.com/evilsocket/opensnitch/commit/35975bc76018dbf37a68283463ab9d74948b6892 +diff --git a/daemon/Makefile b/daemon/Makefile +index 1acfbb0d19..618e96d543 100644 +--- a/daemon/Makefile ++++ b/daemon/Makefile +@@ -12,6 +12,7 @@ install: + @systemctl daemon-reload + + opensnitchd: $(SRC) ++ @go get + @go build -o opensnitchd . + + clean: diff --git a/srcpkgs/opensnitch/patches/musl-int.patch b/srcpkgs/opensnitch/patches/musl-int.patch new file mode 100644 index 000000000000..99a23ff22674 --- /dev/null +++ b/srcpkgs/opensnitch/patches/musl-int.patch @@ -0,0 +1,16 @@ +diff --git a/daemon/netfilter/queue.h b/daemon/netfilter/queue.h +index 64c3ea7c0c..2ced3bb39e 100644 +--- a/daemon/netfilter/queue.h ++++ b/daemon/netfilter/queue.h +@@ -14,6 +14,11 @@ + #include + #include + ++typedef unsigned int uint; ++typedef uint8_t u_int8_t; ++typedef uint16_t u_int16_t; ++typedef uint32_t u_int32_t; ++ + typedef struct { + uint verdict; + uint mark; diff --git a/srcpkgs/opensnitch/patches/protoc-gen.patch b/srcpkgs/opensnitch/patches/protoc-gen.patch new file mode 100644 index 000000000000..9ce0a446c2f1 --- /dev/null +++ b/srcpkgs/opensnitch/patches/protoc-gen.patch @@ -0,0 +1,27 @@ +# Support newer version of protoc-gen-go +diff --git a/proto/Makefile b/proto/Makefile +index 2af601d599..2d4c3d6dcf 100644 +--- a/proto/Makefile ++++ b/proto/Makefile +@@ -1,7 +1,7 @@ + all: ../daemon/ui/protocol/ui.pb.go ../ui/opensnitch/ui_pb2.py + + ../daemon/ui/protocol/ui.pb.go: ui.proto +- protoc -I. ui.proto --go_out=plugins=grpc:../daemon/ui/protocol/ --go_opt=paths=source_relative ++ protoc -I. ui.proto --go_out=../daemon/ui/protocol/ --go-grpc_out=../daemon/ui/protocol/ --go_opt=paths=source_relative --go-grpc_opt=paths=source_relative + + ../ui/opensnitch/ui_pb2.py: ui.proto + python3 -m grpc_tools.protoc -I. --python_out=../ui/opensnitch/ --grpc_python_out=../ui/opensnitch/ ui.proto + +diff --git a/daemon/go.mod b/daemon/go.mod +index ec21c043fd..d33a1088ba 100644 +--- a/daemon/go.mod ++++ b/daemon/go.mod +@@ -16,6 +16,6 @@ require ( + golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208 // indirect + golang.org/x/sys v0.0.0-20190606203320-7fc4e5ec1444 // indirect + golang.org/x/text v0.3.0 // indirect +- google.golang.org/grpc v1.27.0 ++ google.golang.org/grpc v1.32.0 + google.golang.org/protobuf v1.26.0 + ) diff --git a/srcpkgs/opensnitch/template b/srcpkgs/opensnitch/template new file mode 100644 index 000000000000..c79a40d77de9 --- /dev/null +++ b/srcpkgs/opensnitch/template @@ -0,0 +1,31 @@ +# Template file for 'opensnitch' +pkgname=opensnitch +version=1.4.1 +revision=1 +build_style=gnu-makefile +hostmakedepends="git go pkg-config protobuf protobuf-go protoc-gen-go-grpc + qt5-host-tools python3-pip python3-PyQt5-devel-tools python3-setuptools" +makedepends="libnetfilter_queue-devel libpcap-devel python3-devel python3-grpcio-tools + python3-inotify python3-slugify python3-Unidecode" +depends="python3-googleapis-common-protos python3-grpcio python3-inotify + python3-PyQt5 python3-PyQt5-sql python3-slugify qt5-wayland qt5-plugin-sqlite" +conf_files="/etc/opensnitchd/default-config.json + /etc/opensnitchd/system-fw.json" +make_dirs="/etc/opensnitchd/rules/ 0755 root root + /etc/opensnitchd/ 0755 root root" +short_desc="GNU/Linux port of the Little Snitch application firewall" +maintainer="cinerea0 " +license="GPL-3.0-only" +homepage="https://github.com/evilsocket/opensnitch" +distfiles="https://github.com/evilsocket/opensnitch/archive/refs/tags/v${version}.tar.gz" +checksum=a0b89a5acc1880db114bbda52b5e7ac59bc1a4460122e071cb865adfa0c63618 +nopie_files="/usr/bin/opensnitchd" + +do_install() { + vbin daemon/opensnitchd + vinstall daemon/default-config.json 0644 etc/opensnitchd + vinstall daemon/system-fw.json 0644 etc/opensnitchd + cd ui + python3 setup.py install --prefix=/usr --root=${DESTDIR} + vsv opensnitchd +}