Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] firebird3: update to 3.0.10
@ 2023-03-15 17:05 onlylunix
  2023-03-15 17:12 ` abenson
                   ` (23 more replies)
  0 siblings, 24 replies; 25+ messages in thread
From: onlylunix @ 2023-03-15 17:05 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 514 bytes --]

There is a new pull request by onlylunix against master on the void-packages repository

https://github.com/onlylunix/void-packages firebird3upd3.0.10-1
https://github.com/void-linux/void-packages/pull/42789

firebird3: update to 3.0.10
#### Testing the changes
- I tested the changes in this PR: YES

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC, i686-LIBC, x86_64-musl)

A patch file from https://github.com/void-linux/void-packages/pull/42789.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-firebird3upd3.0.10-1-42789.patch --]
[-- Type: text/x-diff, Size: 7866 bytes --]

From d1c2f2a0f431e5428d10b15e8d23c302bc635da7 Mon Sep 17 00:00:00 2001
From: onlylunix <userpc2021@yandex.ru>
Date: Wed, 15 Mar 2023 20:00:21 +0300
Subject: [PATCH] firebird3: update to 3.0.10

---
 srcpkgs/firebird3/INSTALL                     |  9 +++++
 srcpkgs/firebird3/files/firebird-fix-perm-fdb | 23 ++++++++++++
 srcpkgs/firebird3/files/firebird.xinetd       | 16 ++++++++
 srcpkgs/firebird3/files/firebird3/run         |  3 ++
 .../patches/fix-databases-conf.patch          | 15 ++++++++
 srcpkgs/firebird3/patches/fix-std-isnan.patch | 13 -------
 srcpkgs/firebird3/template                    | 37 ++++++++++++-------
 7 files changed, 90 insertions(+), 26 deletions(-)
 create mode 100644 srcpkgs/firebird3/INSTALL
 create mode 100755 srcpkgs/firebird3/files/firebird-fix-perm-fdb
 create mode 100644 srcpkgs/firebird3/files/firebird.xinetd
 create mode 100755 srcpkgs/firebird3/files/firebird3/run
 create mode 100644 srcpkgs/firebird3/patches/fix-databases-conf.patch
 delete mode 100644 srcpkgs/firebird3/patches/fix-std-isnan.patch

diff --git a/srcpkgs/firebird3/INSTALL b/srcpkgs/firebird3/INSTALL
new file mode 100644
index 000000000000..f8863ec6163d
--- /dev/null
+++ b/srcpkgs/firebird3/INSTALL
@@ -0,0 +1,9 @@
+case "${ACTION}" in
+post)
+	if [ "$UPDATE" = "no" ]
+	then
+		gsec -add sysdba -pw masterkey || true
+		firebird-fix-perm-fdb
+	fi
+	;;
+esac
diff --git a/srcpkgs/firebird3/files/firebird-fix-perm-fdb b/srcpkgs/firebird3/files/firebird-fix-perm-fdb
new file mode 100755
index 000000000000..97eff99c3c59
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird-fix-perm-fdb
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+RunUser=_firebird
+RunGroup=_firebird
+databasesconf='/etc/firebird/databases.conf'
+
+# !!! need shielding / !!!
+dir_sampledb='\/tmp'
+dir_secdb='\/var\/lib\/firebird\/system'
+
+checkfdb(){
+[ -e "$@" ] || { echo "$@ - WARNING: No exists!" && return; }
+chpst -u $RunUser test -w "$@" && echo "$@ - OK" || { echo "$@ - FIX PERMISSIONS..."; chown $RunUser:$RunGroup "$@" && chmod 660 "$@"; }
+}
+
+for i in $(grep '^[^#]*=.*\.fdb.*$' "$databasesconf" | sed "s/#.*//; s/^\(.*= *\)\(.*\)$/\2/; s/\$(dir_sampledb)/$dir_sampledb/i; s/\$(dir_secdb)/$dir_secdb/i") # need more testing
+do
+	checkfdb "$i"
+done
+
+install /dev/null -m 644 -o $RunUser -g $RunGroup /etc/firebird/fb_guard
+
+echo 'DONE.'
diff --git a/srcpkgs/firebird3/files/firebird.xinetd b/srcpkgs/firebird3/files/firebird.xinetd
new file mode 100644
index 000000000000..f8f1f7fa348c
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird.xinetd
@@ -0,0 +1,16 @@
+# default: off
+# description: FirebirdSQL v3.0
+service gds-db
+{
+	disable         	= yes
+	flags			= REUSE NODELAY
+	socket_type		= stream
+	wait			= no
+	user			= _firebird
+# These lines cause problems with Windows XP SP2 clients
+# using default firewall configuration (SF#1065511)
+#	log_on_success		+= USERID
+#	log_on_failure 		+= USERID
+# Need ServerMode = Classic in /etc/firebird/firebird.conf
+	server			= /usr/lib/firebird/bin/firebird
+}
diff --git a/srcpkgs/firebird3/files/firebird3/run b/srcpkgs/firebird3/files/firebird3/run
new file mode 100755
index 000000000000..f9e37a7a3829
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird3/run
@@ -0,0 +1,3 @@
+#!/bin/sh
+chpst -u _firebird:_firebird test -w /etc/firebird/fb_guard || install /dev/null -m 644 -o _firebird -g _firebird /etc/firebird/fb_guard
+exec chpst -u _firebird:_firebird /usr/lib/firebird/bin/fbguard -forever
diff --git a/srcpkgs/firebird3/patches/fix-databases-conf.patch b/srcpkgs/firebird3/patches/fix-databases-conf.patch
new file mode 100644
index 000000000000..3a9a55fc1c00
--- /dev/null
+++ b/srcpkgs/firebird3/patches/fix-databases-conf.patch
@@ -0,0 +1,15 @@
+--- a/builds/install/misc/databases.conf.in
++++ b/builds/install/misc/databases.conf.in
+@@ -17,8 +17,9 @@
+ #
+ # Example Database:
+ #
+-employee.fdb = $(dir_sampleDb)/employee.fdb
+-employee = $(dir_sampleDb)/employee.fdb
++# employee.fdb = $(dir_sampleDb)/employee.fdb
++# employee = $(dir_sampleDb)/employee.fdb
++help = /usr/share/doc/firebird/help/help.fdb
+ 
+ #
+ # Master security database specific setup.
+
diff --git a/srcpkgs/firebird3/patches/fix-std-isnan.patch b/srcpkgs/firebird3/patches/fix-std-isnan.patch
deleted file mode 100644
index 9da229bdc86f..000000000000
--- a/srcpkgs/firebird3/patches/fix-std-isnan.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/src/common/classes/FpeControl.h	2020-06-26 12:02:51.000000000 +0200
-+++ b/src/common/classes/FpeControl.h	2020-09-17 06:04:30.516565361 +0200
-@@ -42,6 +42,10 @@
- #include <ieeefp.h>
- #endif
- 
-+#if !defined(__GLIBC__)
-+#define isinf std::isinf
-+#endif
-+
- namespace Firebird
- {
- 
diff --git a/srcpkgs/firebird3/template b/srcpkgs/firebird3/template
index 8f2285dc7729..057741d137e2 100644
--- a/srcpkgs/firebird3/template
+++ b/srcpkgs/firebird3/template
@@ -1,9 +1,7 @@
 # Template file for 'firebird3'
 pkgname=firebird3
-version=3.0.6.33328
+version=3.0.10
 revision=1
-_build=0
-_uver=${version//./_}
 build_style=gnu-configure
 build_helper="qemu"
 configure_args="--prefix=/usr
@@ -23,23 +21,37 @@ configure_args="--prefix=/usr
  --with-fbmisc
  --without-fbsample
  --without-fbsample-db
- --with-system-icu
  --with-system-editline"
+# unrecognized options: --with-system-icu
+
 hostmakedepends="automake libtool pkg-config icu"
 makedepends="boost-devel libedit-devel icu-devel ncurses-devel libatomic_ops-devel
  libtommath-devel zlib-devel"
 short_desc="Relational database offering many ANSI SQL standard features (V3)"
 maintainer="Orphaned <orphan@voidlinux.org>"
-license="custom"
+license="custom:IDPL, custom:Interbase-1.0"
 homepage="https://www.firebirdsql.org/en/start/"
-distfiles="https://github.com/FirebirdSQL/firebird/releases/download/R${_uver%_*}/Firebird-${version}-${_build}.tar.bz2"
-checksum=34c1d2a29bbaf288e682cd1b5f8083f2baf73f351062245ace0bee35a3f7d35f
+distfiles="https://github.com/FirebirdSQL/firebird/archive/refs/tags/v${version}.tar.gz"
+checksum=636bb3c4b4d982dd5fac7c8f2fb08789fa6d7815cecf6dd9cceb86743d7f10b9
 replaces="firebird>=0"
 nocross="Fails to build gpre_boot for host but builds for target"
 
 CFLAGS="-fno-strict-aliasing"
 CXXFLAGS="-fno-delete-null-pointer-checks -Wno-deprecated -Wno-deprecated-declarations"
 
+# Create firebird system user/group
+system_accounts="_firebird:84 _firebird:84"
+firebird_homedir="/var/lib/firebird"
+firebird_descr="Firebird Database Owner"
+triggers="system-accounts"
+
+conf_files="
+ /etc/firebird/databases.conf
+ /etc/firebird/fbtrace.conf
+ /etc/firebird/firebird.conf
+ /etc/firebird/plugins.conf
+ /var/lib/firebird/system/security3.fdb"
+
 if [ "$CROSS_BUILD" ]; then
 	configure_args+=" --enable-binreloc"
 	configure_args+=" ac_cv_func_sem_init=no"
@@ -87,7 +99,7 @@ pre_configure() {
 	# do not change ownership to root:root and
 	# do not change permissions to read-only
 	find -iname "*.sh.in" -exec sed -i "{}" \
-		-e 's;"`whoami`";"root";' \
+		-e 's;"$(whoami)";"root";' \
 		-e 's;chown root:root;#&;' \
 		-e 's;chown -R;#&;' \
 		-e 's;chmod 0444;chmod 0644;' \
@@ -97,8 +109,6 @@ pre_configure() {
 }
 
 do_install() {
-	local _lib _v0=${version%.*} _v1=${version%.*.*} _v2=${version%.*.*.*}
-
 	cd ${wrksrc}/gen
 	./install/makeInstallImage.sh
 
@@ -112,10 +122,11 @@ do_install() {
 	vlicense doc/license/README.license.usage.txt LICENSE
 
 	cp -pR gen/buildroot/* ${DESTDIR}/
+	mv ${DESTDIR}/usr/bin/isql{,-fb} # fix conflict firebird3 and unixodbc 
 
-	# TODO: create superserver?
-	# system account?
-	# runit service?
+	vsv firebird3 # runit service, default ServerMode = Super, see: /etc/firebird/firebird.conf
+	vinstall ${FILESDIR}/firebird.xinetd 644 etc/xinetd.d firebird3 # xinetd, need ServerMode = Classic
+	vbin ${FILESDIR}/firebird-fix-perm-fdb
 	# Example https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=firebird-superserver
 }
 

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
@ 2023-03-15 17:12 ` abenson
  2023-03-15 17:13 ` [PR REVIEW] " abenson
                   ` (22 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: abenson @ 2023-03-15 17:12 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 441 bytes --]

New comment by abenson on void-packages repository

https://github.com/void-linux/void-packages/pull/42789#issuecomment-1470430153

Comment:
Please don't open and close PRs as that makes it more difficult for us to track issues and needed changes.

In the future, please make the changes by [amending and squashing the existing](https://www.atlassian.com/git/tutorials/rewriting-history) commits and then force pushing to the same branch.

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR REVIEW] firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
  2023-03-15 17:12 ` abenson
@ 2023-03-15 17:13 ` abenson
  2023-03-15 17:14 ` abenson
                   ` (21 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: abenson @ 2023-03-15 17:13 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 228 bytes --]

New review comment by abenson on void-packages repository

https://github.com/void-linux/void-packages/pull/42789#discussion_r1137474239

Comment:
You can avoid shielding `/` by using a different separator character on line 16.

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR REVIEW] firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
  2023-03-15 17:12 ` abenson
  2023-03-15 17:13 ` [PR REVIEW] " abenson
@ 2023-03-15 17:14 ` abenson
  2023-03-15 20:51 ` [PR PATCH] [Updated] " onlylunix
                   ` (20 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: abenson @ 2023-03-15 17:14 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 244 bytes --]

New review comment by abenson on void-packages repository

https://github.com/void-linux/void-packages/pull/42789#discussion_r1137475290

Comment:
In the quotes here, you can use `|` or another unused character to make things a little cleaner.

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR PATCH] [Updated] firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (2 preceding siblings ...)
  2023-03-15 17:14 ` abenson
@ 2023-03-15 20:51 ` onlylunix
  2023-03-15 21:12 ` onlylunix
                   ` (19 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: onlylunix @ 2023-03-15 20:51 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 519 bytes --]

There is an updated pull request by onlylunix against master on the void-packages repository

https://github.com/onlylunix/void-packages firebird3upd3.0.10-1
https://github.com/void-linux/void-packages/pull/42789

firebird3: update to 3.0.10
#### Testing the changes
- I tested the changes in this PR: YES

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC, i686-LIBC, x86_64-musl)

A patch file from https://github.com/void-linux/void-packages/pull/42789.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-firebird3upd3.0.10-1-42789.patch --]
[-- Type: text/x-diff, Size: 7866 bytes --]

From c099749699c0c3993abc5f55c1f877383313ebc5 Mon Sep 17 00:00:00 2001
From: onlylunix <userpc2021@yandex.ru>
Date: Wed, 15 Mar 2023 20:00:21 +0300
Subject: [PATCH] firebird3: update to 3.0.10

---
 srcpkgs/firebird3/INSTALL                     |  9 +++++
 srcpkgs/firebird3/files/firebird-fix-perm-fdb | 23 ++++++++++++
 srcpkgs/firebird3/files/firebird.xinetd       | 16 ++++++++
 srcpkgs/firebird3/files/firebird3/run         |  3 ++
 .../patches/fix-databases-conf.patch          | 15 ++++++++
 srcpkgs/firebird3/patches/fix-std-isnan.patch | 13 -------
 srcpkgs/firebird3/template                    | 37 ++++++++++++-------
 7 files changed, 90 insertions(+), 26 deletions(-)
 create mode 100644 srcpkgs/firebird3/INSTALL
 create mode 100755 srcpkgs/firebird3/files/firebird-fix-perm-fdb
 create mode 100644 srcpkgs/firebird3/files/firebird.xinetd
 create mode 100755 srcpkgs/firebird3/files/firebird3/run
 create mode 100644 srcpkgs/firebird3/patches/fix-databases-conf.patch
 delete mode 100644 srcpkgs/firebird3/patches/fix-std-isnan.patch

diff --git a/srcpkgs/firebird3/INSTALL b/srcpkgs/firebird3/INSTALL
new file mode 100644
index 000000000000..f8863ec6163d
--- /dev/null
+++ b/srcpkgs/firebird3/INSTALL
@@ -0,0 +1,9 @@
+case "${ACTION}" in
+post)
+	if [ "$UPDATE" = "no" ]
+	then
+		gsec -add sysdba -pw masterkey || true
+		firebird-fix-perm-fdb
+	fi
+	;;
+esac
diff --git a/srcpkgs/firebird3/files/firebird-fix-perm-fdb b/srcpkgs/firebird3/files/firebird-fix-perm-fdb
new file mode 100755
index 000000000000..97eff99c3c59
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird-fix-perm-fdb
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+RunUser=_firebird
+RunGroup=_firebird
+databasesconf='/etc/firebird/databases.conf'
+
+# !!! need shielding / !!!
+dir_sampledb='\/tmp'
+dir_secdb='\/var\/lib\/firebird\/system'
+
+checkfdb(){
+[ -e "$@" ] || { echo "$@ - WARNING: No exists!" && return; }
+chpst -u $RunUser test -w "$@" && echo "$@ - OK" || { echo "$@ - FIX PERMISSIONS..."; chown $RunUser:$RunGroup "$@" && chmod 660 "$@"; }
+}
+
+for i in $(grep '^[^#]*=.*\.fdb.*$' "$databasesconf" | sed "s/#.*//; s/^\(.*= *\)\(.*\)$/\2/; s/\$(dir_sampledb)/$dir_sampledb/i; s/\$(dir_secdb)/$dir_secdb/i") # need more testing
+do
+	checkfdb "$i"
+done
+
+install /dev/null -m 644 -o $RunUser -g $RunGroup /etc/firebird/fb_guard
+
+echo 'DONE.'
diff --git a/srcpkgs/firebird3/files/firebird.xinetd b/srcpkgs/firebird3/files/firebird.xinetd
new file mode 100644
index 000000000000..f8f1f7fa348c
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird.xinetd
@@ -0,0 +1,16 @@
+# default: off
+# description: FirebirdSQL v3.0
+service gds-db
+{
+	disable         	= yes
+	flags			= REUSE NODELAY
+	socket_type		= stream
+	wait			= no
+	user			= _firebird
+# These lines cause problems with Windows XP SP2 clients
+# using default firewall configuration (SF#1065511)
+#	log_on_success		+= USERID
+#	log_on_failure 		+= USERID
+# Need ServerMode = Classic in /etc/firebird/firebird.conf
+	server			= /usr/lib/firebird/bin/firebird
+}
diff --git a/srcpkgs/firebird3/files/firebird3/run b/srcpkgs/firebird3/files/firebird3/run
new file mode 100755
index 000000000000..f9e37a7a3829
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird3/run
@@ -0,0 +1,3 @@
+#!/bin/sh
+chpst -u _firebird:_firebird test -w /etc/firebird/fb_guard || install /dev/null -m 644 -o _firebird -g _firebird /etc/firebird/fb_guard
+exec chpst -u _firebird:_firebird /usr/lib/firebird/bin/fbguard -forever
diff --git a/srcpkgs/firebird3/patches/fix-databases-conf.patch b/srcpkgs/firebird3/patches/fix-databases-conf.patch
new file mode 100644
index 000000000000..3a9a55fc1c00
--- /dev/null
+++ b/srcpkgs/firebird3/patches/fix-databases-conf.patch
@@ -0,0 +1,15 @@
+--- a/builds/install/misc/databases.conf.in
++++ b/builds/install/misc/databases.conf.in
+@@ -17,8 +17,9 @@
+ #
+ # Example Database:
+ #
+-employee.fdb = $(dir_sampleDb)/employee.fdb
+-employee = $(dir_sampleDb)/employee.fdb
++# employee.fdb = $(dir_sampleDb)/employee.fdb
++# employee = $(dir_sampleDb)/employee.fdb
++help = /usr/share/doc/firebird/help/help.fdb
+ 
+ #
+ # Master security database specific setup.
+
diff --git a/srcpkgs/firebird3/patches/fix-std-isnan.patch b/srcpkgs/firebird3/patches/fix-std-isnan.patch
deleted file mode 100644
index 9da229bdc86f..000000000000
--- a/srcpkgs/firebird3/patches/fix-std-isnan.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/src/common/classes/FpeControl.h	2020-06-26 12:02:51.000000000 +0200
-+++ b/src/common/classes/FpeControl.h	2020-09-17 06:04:30.516565361 +0200
-@@ -42,6 +42,10 @@
- #include <ieeefp.h>
- #endif
- 
-+#if !defined(__GLIBC__)
-+#define isinf std::isinf
-+#endif
-+
- namespace Firebird
- {
- 
diff --git a/srcpkgs/firebird3/template b/srcpkgs/firebird3/template
index 8f2285dc7729..057741d137e2 100644
--- a/srcpkgs/firebird3/template
+++ b/srcpkgs/firebird3/template
@@ -1,9 +1,7 @@
 # Template file for 'firebird3'
 pkgname=firebird3
-version=3.0.6.33328
+version=3.0.10
 revision=1
-_build=0
-_uver=${version//./_}
 build_style=gnu-configure
 build_helper="qemu"
 configure_args="--prefix=/usr
@@ -23,23 +21,37 @@ configure_args="--prefix=/usr
  --with-fbmisc
  --without-fbsample
  --without-fbsample-db
- --with-system-icu
  --with-system-editline"
+# unrecognized options: --with-system-icu
+
 hostmakedepends="automake libtool pkg-config icu"
 makedepends="boost-devel libedit-devel icu-devel ncurses-devel libatomic_ops-devel
  libtommath-devel zlib-devel"
 short_desc="Relational database offering many ANSI SQL standard features (V3)"
 maintainer="Orphaned <orphan@voidlinux.org>"
-license="custom"
+license="custom:IDPL, custom:Interbase-1.0"
 homepage="https://www.firebirdsql.org/en/start/"
-distfiles="https://github.com/FirebirdSQL/firebird/releases/download/R${_uver%_*}/Firebird-${version}-${_build}.tar.bz2"
-checksum=34c1d2a29bbaf288e682cd1b5f8083f2baf73f351062245ace0bee35a3f7d35f
+distfiles="https://github.com/FirebirdSQL/firebird/archive/refs/tags/v${version}.tar.gz"
+checksum=636bb3c4b4d982dd5fac7c8f2fb08789fa6d7815cecf6dd9cceb86743d7f10b9
 replaces="firebird>=0"
 nocross="Fails to build gpre_boot for host but builds for target"
 
 CFLAGS="-fno-strict-aliasing"
 CXXFLAGS="-fno-delete-null-pointer-checks -Wno-deprecated -Wno-deprecated-declarations"
 
+# Create firebird system user/group
+system_accounts="_firebird:84 _firebird:84"
+firebird_homedir="/var/lib/firebird"
+firebird_descr="Firebird Database Owner"
+triggers="system-accounts"
+
+conf_files="
+ /etc/firebird/databases.conf
+ /etc/firebird/fbtrace.conf
+ /etc/firebird/firebird.conf
+ /etc/firebird/plugins.conf
+ /var/lib/firebird/system/security3.fdb"
+
 if [ "$CROSS_BUILD" ]; then
 	configure_args+=" --enable-binreloc"
 	configure_args+=" ac_cv_func_sem_init=no"
@@ -87,7 +99,7 @@ pre_configure() {
 	# do not change ownership to root:root and
 	# do not change permissions to read-only
 	find -iname "*.sh.in" -exec sed -i "{}" \
-		-e 's;"`whoami`";"root";' \
+		-e 's;"$(whoami)";"root";' \
 		-e 's;chown root:root;#&;' \
 		-e 's;chown -R;#&;' \
 		-e 's;chmod 0444;chmod 0644;' \
@@ -97,8 +109,6 @@ pre_configure() {
 }
 
 do_install() {
-	local _lib _v0=${version%.*} _v1=${version%.*.*} _v2=${version%.*.*.*}
-
 	cd ${wrksrc}/gen
 	./install/makeInstallImage.sh
 
@@ -112,10 +122,11 @@ do_install() {
 	vlicense doc/license/README.license.usage.txt LICENSE
 
 	cp -pR gen/buildroot/* ${DESTDIR}/
+	mv ${DESTDIR}/usr/bin/isql{,-fb} # fix conflict firebird3 and unixodbc 
 
-	# TODO: create superserver?
-	# system account?
-	# runit service?
+	vsv firebird3 # runit service, default ServerMode = Super, see: /etc/firebird/firebird.conf
+	vinstall ${FILESDIR}/firebird.xinetd 644 etc/xinetd.d firebird3 # xinetd, need ServerMode = Classic
+	vbin ${FILESDIR}/firebird-fix-perm-fdb
 	# Example https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=firebird-superserver
 }
 

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR PATCH] [Updated] firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (3 preceding siblings ...)
  2023-03-15 20:51 ` [PR PATCH] [Updated] " onlylunix
@ 2023-03-15 21:12 ` onlylunix
  2023-03-15 21:36 ` [PR REVIEW] " onlylunix
                   ` (18 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: onlylunix @ 2023-03-15 21:12 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 519 bytes --]

There is an updated pull request by onlylunix against master on the void-packages repository

https://github.com/onlylunix/void-packages firebird3upd3.0.10-1
https://github.com/void-linux/void-packages/pull/42789

firebird3: update to 3.0.10
#### Testing the changes
- I tested the changes in this PR: YES

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC, i686-LIBC, x86_64-musl)

A patch file from https://github.com/void-linux/void-packages/pull/42789.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-firebird3upd3.0.10-1-42789.patch --]
[-- Type: text/x-diff, Size: 7832 bytes --]

From 009fd64feb90755b0c3587b56772d20e5f406bc2 Mon Sep 17 00:00:00 2001
From: onlylunix <userpc2021@yandex.ru>
Date: Wed, 15 Mar 2023 20:00:21 +0300
Subject: [PATCH] firebird3: update to 3.0.10

---
 srcpkgs/firebird3/INSTALL                     |  9 +++++
 srcpkgs/firebird3/files/firebird-fix-perm-fdb | 22 +++++++++++
 srcpkgs/firebird3/files/firebird.xinetd       | 16 ++++++++
 srcpkgs/firebird3/files/firebird3/run         |  3 ++
 .../patches/fix-databases-conf.patch          | 15 ++++++++
 srcpkgs/firebird3/patches/fix-std-isnan.patch | 13 -------
 srcpkgs/firebird3/template                    | 37 ++++++++++++-------
 7 files changed, 89 insertions(+), 26 deletions(-)
 create mode 100644 srcpkgs/firebird3/INSTALL
 create mode 100755 srcpkgs/firebird3/files/firebird-fix-perm-fdb
 create mode 100644 srcpkgs/firebird3/files/firebird.xinetd
 create mode 100755 srcpkgs/firebird3/files/firebird3/run
 create mode 100644 srcpkgs/firebird3/patches/fix-databases-conf.patch
 delete mode 100644 srcpkgs/firebird3/patches/fix-std-isnan.patch

diff --git a/srcpkgs/firebird3/INSTALL b/srcpkgs/firebird3/INSTALL
new file mode 100644
index 000000000000..f8863ec6163d
--- /dev/null
+++ b/srcpkgs/firebird3/INSTALL
@@ -0,0 +1,9 @@
+case "${ACTION}" in
+post)
+	if [ "$UPDATE" = "no" ]
+	then
+		gsec -add sysdba -pw masterkey || true
+		firebird-fix-perm-fdb
+	fi
+	;;
+esac
diff --git a/srcpkgs/firebird3/files/firebird-fix-perm-fdb b/srcpkgs/firebird3/files/firebird-fix-perm-fdb
new file mode 100755
index 000000000000..7a2b4edb936b
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird-fix-perm-fdb
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+RunUser=_firebird
+RunGroup=_firebird
+databasesconf='/etc/firebird/databases.conf'
+
+dir_sampledb='/tmp'
+dir_secdb='/var/lib/firebird/system'
+
+checkfdb(){
+[ -e "$@" ] || { echo "$@ - WARNING: No exists!" && return; }
+chpst -u $RunUser test -w "$@" && echo "$@ - OK" || { echo "$@ - FIX PERMISSIONS..."; chown $RunUser:$RunGroup "$@" && chmod 660 "$@"; }
+}
+
+for i in $(grep '^[^#]*=.*\.fdb.*$' "$databasesconf" | sed "s|#.*||; s|^\(.*= *\)\(.*\)$|\2|; s|\$(dir_sampledb)|$dir_sampledb|i; s|\$(dir_secdb)|$dir_secdb|i") # need more testing
+do
+	checkfdb "$i"
+done
+
+install /dev/null -m 644 -o $RunUser -g $RunGroup /etc/firebird/fb_guard
+
+echo 'DONE.'
diff --git a/srcpkgs/firebird3/files/firebird.xinetd b/srcpkgs/firebird3/files/firebird.xinetd
new file mode 100644
index 000000000000..f8f1f7fa348c
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird.xinetd
@@ -0,0 +1,16 @@
+# default: off
+# description: FirebirdSQL v3.0
+service gds-db
+{
+	disable         	= yes
+	flags			= REUSE NODELAY
+	socket_type		= stream
+	wait			= no
+	user			= _firebird
+# These lines cause problems with Windows XP SP2 clients
+# using default firewall configuration (SF#1065511)
+#	log_on_success		+= USERID
+#	log_on_failure 		+= USERID
+# Need ServerMode = Classic in /etc/firebird/firebird.conf
+	server			= /usr/lib/firebird/bin/firebird
+}
diff --git a/srcpkgs/firebird3/files/firebird3/run b/srcpkgs/firebird3/files/firebird3/run
new file mode 100755
index 000000000000..f9e37a7a3829
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird3/run
@@ -0,0 +1,3 @@
+#!/bin/sh
+chpst -u _firebird:_firebird test -w /etc/firebird/fb_guard || install /dev/null -m 644 -o _firebird -g _firebird /etc/firebird/fb_guard
+exec chpst -u _firebird:_firebird /usr/lib/firebird/bin/fbguard -forever
diff --git a/srcpkgs/firebird3/patches/fix-databases-conf.patch b/srcpkgs/firebird3/patches/fix-databases-conf.patch
new file mode 100644
index 000000000000..3a9a55fc1c00
--- /dev/null
+++ b/srcpkgs/firebird3/patches/fix-databases-conf.patch
@@ -0,0 +1,15 @@
+--- a/builds/install/misc/databases.conf.in
++++ b/builds/install/misc/databases.conf.in
+@@ -17,8 +17,9 @@
+ #
+ # Example Database:
+ #
+-employee.fdb = $(dir_sampleDb)/employee.fdb
+-employee = $(dir_sampleDb)/employee.fdb
++# employee.fdb = $(dir_sampleDb)/employee.fdb
++# employee = $(dir_sampleDb)/employee.fdb
++help = /usr/share/doc/firebird/help/help.fdb
+ 
+ #
+ # Master security database specific setup.
+
diff --git a/srcpkgs/firebird3/patches/fix-std-isnan.patch b/srcpkgs/firebird3/patches/fix-std-isnan.patch
deleted file mode 100644
index 9da229bdc86f..000000000000
--- a/srcpkgs/firebird3/patches/fix-std-isnan.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/src/common/classes/FpeControl.h	2020-06-26 12:02:51.000000000 +0200
-+++ b/src/common/classes/FpeControl.h	2020-09-17 06:04:30.516565361 +0200
-@@ -42,6 +42,10 @@
- #include <ieeefp.h>
- #endif
- 
-+#if !defined(__GLIBC__)
-+#define isinf std::isinf
-+#endif
-+
- namespace Firebird
- {
- 
diff --git a/srcpkgs/firebird3/template b/srcpkgs/firebird3/template
index 8f2285dc7729..057741d137e2 100644
--- a/srcpkgs/firebird3/template
+++ b/srcpkgs/firebird3/template
@@ -1,9 +1,7 @@
 # Template file for 'firebird3'
 pkgname=firebird3
-version=3.0.6.33328
+version=3.0.10
 revision=1
-_build=0
-_uver=${version//./_}
 build_style=gnu-configure
 build_helper="qemu"
 configure_args="--prefix=/usr
@@ -23,23 +21,37 @@ configure_args="--prefix=/usr
  --with-fbmisc
  --without-fbsample
  --without-fbsample-db
- --with-system-icu
  --with-system-editline"
+# unrecognized options: --with-system-icu
+
 hostmakedepends="automake libtool pkg-config icu"
 makedepends="boost-devel libedit-devel icu-devel ncurses-devel libatomic_ops-devel
  libtommath-devel zlib-devel"
 short_desc="Relational database offering many ANSI SQL standard features (V3)"
 maintainer="Orphaned <orphan@voidlinux.org>"
-license="custom"
+license="custom:IDPL, custom:Interbase-1.0"
 homepage="https://www.firebirdsql.org/en/start/"
-distfiles="https://github.com/FirebirdSQL/firebird/releases/download/R${_uver%_*}/Firebird-${version}-${_build}.tar.bz2"
-checksum=34c1d2a29bbaf288e682cd1b5f8083f2baf73f351062245ace0bee35a3f7d35f
+distfiles="https://github.com/FirebirdSQL/firebird/archive/refs/tags/v${version}.tar.gz"
+checksum=636bb3c4b4d982dd5fac7c8f2fb08789fa6d7815cecf6dd9cceb86743d7f10b9
 replaces="firebird>=0"
 nocross="Fails to build gpre_boot for host but builds for target"
 
 CFLAGS="-fno-strict-aliasing"
 CXXFLAGS="-fno-delete-null-pointer-checks -Wno-deprecated -Wno-deprecated-declarations"
 
+# Create firebird system user/group
+system_accounts="_firebird:84 _firebird:84"
+firebird_homedir="/var/lib/firebird"
+firebird_descr="Firebird Database Owner"
+triggers="system-accounts"
+
+conf_files="
+ /etc/firebird/databases.conf
+ /etc/firebird/fbtrace.conf
+ /etc/firebird/firebird.conf
+ /etc/firebird/plugins.conf
+ /var/lib/firebird/system/security3.fdb"
+
 if [ "$CROSS_BUILD" ]; then
 	configure_args+=" --enable-binreloc"
 	configure_args+=" ac_cv_func_sem_init=no"
@@ -87,7 +99,7 @@ pre_configure() {
 	# do not change ownership to root:root and
 	# do not change permissions to read-only
 	find -iname "*.sh.in" -exec sed -i "{}" \
-		-e 's;"`whoami`";"root";' \
+		-e 's;"$(whoami)";"root";' \
 		-e 's;chown root:root;#&;' \
 		-e 's;chown -R;#&;' \
 		-e 's;chmod 0444;chmod 0644;' \
@@ -97,8 +109,6 @@ pre_configure() {
 }
 
 do_install() {
-	local _lib _v0=${version%.*} _v1=${version%.*.*} _v2=${version%.*.*.*}
-
 	cd ${wrksrc}/gen
 	./install/makeInstallImage.sh
 
@@ -112,10 +122,11 @@ do_install() {
 	vlicense doc/license/README.license.usage.txt LICENSE
 
 	cp -pR gen/buildroot/* ${DESTDIR}/
+	mv ${DESTDIR}/usr/bin/isql{,-fb} # fix conflict firebird3 and unixodbc 
 
-	# TODO: create superserver?
-	# system account?
-	# runit service?
+	vsv firebird3 # runit service, default ServerMode = Super, see: /etc/firebird/firebird.conf
+	vinstall ${FILESDIR}/firebird.xinetd 644 etc/xinetd.d firebird3 # xinetd, need ServerMode = Classic
+	vbin ${FILESDIR}/firebird-fix-perm-fdb
 	# Example https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=firebird-superserver
 }
 

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR REVIEW] firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (4 preceding siblings ...)
  2023-03-15 21:12 ` onlylunix
@ 2023-03-15 21:36 ` onlylunix
  2023-03-16  3:55 ` [PR PATCH] [Updated] " onlylunix
                   ` (17 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: onlylunix @ 2023-03-15 21:36 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 154 bytes --]

New review comment by onlylunix on void-packages repository

https://github.com/void-linux/void-packages/pull/42789#discussion_r1137799176

Comment:
done

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR PATCH] [Updated] firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (5 preceding siblings ...)
  2023-03-15 21:36 ` [PR REVIEW] " onlylunix
@ 2023-03-16  3:55 ` onlylunix
  2023-03-17 13:09 ` onlylunix
                   ` (16 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: onlylunix @ 2023-03-16  3:55 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 519 bytes --]

There is an updated pull request by onlylunix against master on the void-packages repository

https://github.com/onlylunix/void-packages firebird3upd3.0.10-1
https://github.com/void-linux/void-packages/pull/42789

firebird3: update to 3.0.10
#### Testing the changes
- I tested the changes in this PR: YES

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC, i686-LIBC, x86_64-musl)

A patch file from https://github.com/void-linux/void-packages/pull/42789.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-firebird3upd3.0.10-1-42789.patch --]
[-- Type: text/x-diff, Size: 8044 bytes --]

From 78491f5471abf56803b8ef17c0d3bff9972d5f5b Mon Sep 17 00:00:00 2001
From: onlylunix <userpc2021@yandex.ru>
Date: Wed, 15 Mar 2023 20:00:21 +0300
Subject: [PATCH] firebird3: update to 3.0.10

---
 srcpkgs/firebird3/INSTALL                     |  9 ++++
 srcpkgs/firebird3/files/firebird-fix-perm-fdb | 22 ++++++++++
 srcpkgs/firebird3/files/firebird.xinetd       | 16 +++++++
 srcpkgs/firebird3/files/firebird3/run         |  3 ++
 .../patches/fix-databases-conf.patch          | 15 +++++++
 srcpkgs/firebird3/patches/fix-std-isnan.patch | 13 ------
 srcpkgs/firebird3/template                    | 42 ++++++++++++-------
 7 files changed, 92 insertions(+), 28 deletions(-)
 create mode 100644 srcpkgs/firebird3/INSTALL
 create mode 100755 srcpkgs/firebird3/files/firebird-fix-perm-fdb
 create mode 100644 srcpkgs/firebird3/files/firebird.xinetd
 create mode 100755 srcpkgs/firebird3/files/firebird3/run
 create mode 100644 srcpkgs/firebird3/patches/fix-databases-conf.patch
 delete mode 100644 srcpkgs/firebird3/patches/fix-std-isnan.patch

diff --git a/srcpkgs/firebird3/INSTALL b/srcpkgs/firebird3/INSTALL
new file mode 100644
index 000000000000..f8863ec6163d
--- /dev/null
+++ b/srcpkgs/firebird3/INSTALL
@@ -0,0 +1,9 @@
+case "${ACTION}" in
+post)
+	if [ "$UPDATE" = "no" ]
+	then
+		gsec -add sysdba -pw masterkey || true
+		firebird-fix-perm-fdb
+	fi
+	;;
+esac
diff --git a/srcpkgs/firebird3/files/firebird-fix-perm-fdb b/srcpkgs/firebird3/files/firebird-fix-perm-fdb
new file mode 100755
index 000000000000..7a2b4edb936b
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird-fix-perm-fdb
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+RunUser=_firebird
+RunGroup=_firebird
+databasesconf='/etc/firebird/databases.conf'
+
+dir_sampledb='/tmp'
+dir_secdb='/var/lib/firebird/system'
+
+checkfdb(){
+[ -e "$@" ] || { echo "$@ - WARNING: No exists!" && return; }
+chpst -u $RunUser test -w "$@" && echo "$@ - OK" || { echo "$@ - FIX PERMISSIONS..."; chown $RunUser:$RunGroup "$@" && chmod 660 "$@"; }
+}
+
+for i in $(grep '^[^#]*=.*\.fdb.*$' "$databasesconf" | sed "s|#.*||; s|^\(.*= *\)\(.*\)$|\2|; s|\$(dir_sampledb)|$dir_sampledb|i; s|\$(dir_secdb)|$dir_secdb|i") # need more testing
+do
+	checkfdb "$i"
+done
+
+install /dev/null -m 644 -o $RunUser -g $RunGroup /etc/firebird/fb_guard
+
+echo 'DONE.'
diff --git a/srcpkgs/firebird3/files/firebird.xinetd b/srcpkgs/firebird3/files/firebird.xinetd
new file mode 100644
index 000000000000..f8f1f7fa348c
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird.xinetd
@@ -0,0 +1,16 @@
+# default: off
+# description: FirebirdSQL v3.0
+service gds-db
+{
+	disable         	= yes
+	flags			= REUSE NODELAY
+	socket_type		= stream
+	wait			= no
+	user			= _firebird
+# These lines cause problems with Windows XP SP2 clients
+# using default firewall configuration (SF#1065511)
+#	log_on_success		+= USERID
+#	log_on_failure 		+= USERID
+# Need ServerMode = Classic in /etc/firebird/firebird.conf
+	server			= /usr/lib/firebird/bin/firebird
+}
diff --git a/srcpkgs/firebird3/files/firebird3/run b/srcpkgs/firebird3/files/firebird3/run
new file mode 100755
index 000000000000..f9e37a7a3829
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird3/run
@@ -0,0 +1,3 @@
+#!/bin/sh
+chpst -u _firebird:_firebird test -w /etc/firebird/fb_guard || install /dev/null -m 644 -o _firebird -g _firebird /etc/firebird/fb_guard
+exec chpst -u _firebird:_firebird /usr/lib/firebird/bin/fbguard -forever
diff --git a/srcpkgs/firebird3/patches/fix-databases-conf.patch b/srcpkgs/firebird3/patches/fix-databases-conf.patch
new file mode 100644
index 000000000000..3a9a55fc1c00
--- /dev/null
+++ b/srcpkgs/firebird3/patches/fix-databases-conf.patch
@@ -0,0 +1,15 @@
+--- a/builds/install/misc/databases.conf.in
++++ b/builds/install/misc/databases.conf.in
+@@ -17,8 +17,9 @@
+ #
+ # Example Database:
+ #
+-employee.fdb = $(dir_sampleDb)/employee.fdb
+-employee = $(dir_sampleDb)/employee.fdb
++# employee.fdb = $(dir_sampleDb)/employee.fdb
++# employee = $(dir_sampleDb)/employee.fdb
++help = /usr/share/doc/firebird/help/help.fdb
+ 
+ #
+ # Master security database specific setup.
+
diff --git a/srcpkgs/firebird3/patches/fix-std-isnan.patch b/srcpkgs/firebird3/patches/fix-std-isnan.patch
deleted file mode 100644
index 9da229bdc86f..000000000000
--- a/srcpkgs/firebird3/patches/fix-std-isnan.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/src/common/classes/FpeControl.h	2020-06-26 12:02:51.000000000 +0200
-+++ b/src/common/classes/FpeControl.h	2020-09-17 06:04:30.516565361 +0200
-@@ -42,6 +42,10 @@
- #include <ieeefp.h>
- #endif
- 
-+#if !defined(__GLIBC__)
-+#define isinf std::isinf
-+#endif
-+
- namespace Firebird
- {
- 
diff --git a/srcpkgs/firebird3/template b/srcpkgs/firebird3/template
index 8f2285dc7729..5c3b205b1d3a 100644
--- a/srcpkgs/firebird3/template
+++ b/srcpkgs/firebird3/template
@@ -1,9 +1,7 @@
 # Template file for 'firebird3'
 pkgname=firebird3
-version=3.0.6.33328
+version=3.0.10
 revision=1
-_build=0
-_uver=${version//./_}
 build_style=gnu-configure
 build_helper="qemu"
 configure_args="--prefix=/usr
@@ -23,23 +21,37 @@ configure_args="--prefix=/usr
  --with-fbmisc
  --without-fbsample
  --without-fbsample-db
- --with-system-icu
  --with-system-editline"
-hostmakedepends="automake libtool pkg-config icu"
+# unrecognized options: --with-system-icu
+
+hostmakedepends="automake libtool pkg-config icu rsync"
 makedepends="boost-devel libedit-devel icu-devel ncurses-devel libatomic_ops-devel
  libtommath-devel zlib-devel"
 short_desc="Relational database offering many ANSI SQL standard features (V3)"
 maintainer="Orphaned <orphan@voidlinux.org>"
-license="custom"
+license="custom:IDPL, custom:Interbase-1.0"
 homepage="https://www.firebirdsql.org/en/start/"
-distfiles="https://github.com/FirebirdSQL/firebird/releases/download/R${_uver%_*}/Firebird-${version}-${_build}.tar.bz2"
-checksum=34c1d2a29bbaf288e682cd1b5f8083f2baf73f351062245ace0bee35a3f7d35f
+distfiles="https://github.com/FirebirdSQL/firebird/archive/refs/tags/v${version}.tar.gz"
+checksum=636bb3c4b4d982dd5fac7c8f2fb08789fa6d7815cecf6dd9cceb86743d7f10b9
 replaces="firebird>=0"
 nocross="Fails to build gpre_boot for host but builds for target"
 
 CFLAGS="-fno-strict-aliasing"
 CXXFLAGS="-fno-delete-null-pointer-checks -Wno-deprecated -Wno-deprecated-declarations"
 
+# Create firebird system user/group
+system_accounts="_firebird:84 _firebird:84"
+firebird_homedir="/var/lib/firebird"
+firebird_descr="Firebird Database Owner"
+triggers="system-accounts"
+
+conf_files="
+ /etc/firebird/databases.conf
+ /etc/firebird/fbtrace.conf
+ /etc/firebird/firebird.conf
+ /etc/firebird/plugins.conf
+ /var/lib/firebird/system/security3.fdb"
+
 if [ "$CROSS_BUILD" ]; then
 	configure_args+=" --enable-binreloc"
 	configure_args+=" ac_cv_func_sem_init=no"
@@ -87,7 +99,7 @@ pre_configure() {
 	# do not change ownership to root:root and
 	# do not change permissions to read-only
 	find -iname "*.sh.in" -exec sed -i "{}" \
-		-e 's;"`whoami`";"root";' \
+		-e 's;"$(whoami)";"root";' \
 		-e 's;chown root:root;#&;' \
 		-e 's;chown -R;#&;' \
 		-e 's;chmod 0444;chmod 0644;' \
@@ -97,8 +109,6 @@ pre_configure() {
 }
 
 do_install() {
-	local _lib _v0=${version%.*} _v1=${version%.*.*} _v2=${version%.*.*.*}
-
 	cd ${wrksrc}/gen
 	./install/makeInstallImage.sh
 
@@ -111,11 +121,13 @@ do_install() {
 	vlicense doc/license/IDPL.txt IDPL
 	vlicense doc/license/README.license.usage.txt LICENSE
 
-	cp -pR gen/buildroot/* ${DESTDIR}/
+	# cp -pR gen/buildroot/* ${DESTDIR}/
+	rsync -a --exclude '*.sh' gen/buildroot/ ${DESTDIR}/ # exclude old broken scripts
+	mv ${DESTDIR}/usr/bin/isql{,-fb} # fix conflict firebird3 and unixodbc 
 
-	# TODO: create superserver?
-	# system account?
-	# runit service?
+	vsv firebird3 # runit service, default ServerMode = Super, see: /etc/firebird/firebird.conf
+	vinstall ${FILESDIR}/firebird.xinetd 644 etc/xinetd.d firebird3 # xinetd, need ServerMode = Classic
+	vbin ${FILESDIR}/firebird-fix-perm-fdb
 	# Example https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=firebird-superserver
 }
 

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR PATCH] [Updated] firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (6 preceding siblings ...)
  2023-03-16  3:55 ` [PR PATCH] [Updated] " onlylunix
@ 2023-03-17 13:09 ` onlylunix
  2023-03-17 13:11 ` onlylunix
                   ` (15 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: onlylunix @ 2023-03-17 13:09 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 519 bytes --]

There is an updated pull request by onlylunix against master on the void-packages repository

https://github.com/onlylunix/void-packages firebird3upd3.0.10-1
https://github.com/void-linux/void-packages/pull/42789

firebird3: update to 3.0.10
#### Testing the changes
- I tested the changes in this PR: YES

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC, i686-LIBC, x86_64-musl)

A patch file from https://github.com/void-linux/void-packages/pull/42789.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-firebird3upd3.0.10-1-42789.patch --]
[-- Type: text/x-diff, Size: 8046 bytes --]

From 3dcdddf59e3b642ef8c7965971febc6bbeff19be Mon Sep 17 00:00:00 2001
From: onlylunix <userpc2021@yandex.ru>
Date: Wed, 15 Mar 2023 20:00:21 +0300
Subject: [PATCH] firebird3: update to 3.0.10

---
 srcpkgs/firebird3/INSTALL                     |  9 ++++
 srcpkgs/firebird3/files/firebird-fix-perm-fdb | 22 ++++++++++
 srcpkgs/firebird3/files/firebird.xinetd       | 16 +++++++
 srcpkgs/firebird3/files/firebird3/run         |  3 ++
 .../patches/fix-databases-conf.patch          | 15 +++++++
 srcpkgs/firebird3/patches/fix-std-isnan.patch | 13 ------
 srcpkgs/firebird3/template                    | 42 ++++++++++++-------
 7 files changed, 92 insertions(+), 28 deletions(-)
 create mode 100644 srcpkgs/firebird3/INSTALL
 create mode 100755 srcpkgs/firebird3/files/firebird-fix-perm-fdb
 create mode 100644 srcpkgs/firebird3/files/firebird.xinetd
 create mode 100755 srcpkgs/firebird3/files/firebird3/run
 create mode 100644 srcpkgs/firebird3/patches/fix-databases-conf.patch
 delete mode 100644 srcpkgs/firebird3/patches/fix-std-isnan.patch

diff --git a/srcpkgs/firebird3/INSTALL b/srcpkgs/firebird3/INSTALL
new file mode 100644
index 000000000000..f8863ec6163d
--- /dev/null
+++ b/srcpkgs/firebird3/INSTALL
@@ -0,0 +1,9 @@
+case "${ACTION}" in
+post)
+	if [ "$UPDATE" = "no" ]
+	then
+		gsec -add sysdba -pw masterkey || true
+		firebird-fix-perm-fdb
+	fi
+	;;
+esac
diff --git a/srcpkgs/firebird3/files/firebird-fix-perm-fdb b/srcpkgs/firebird3/files/firebird-fix-perm-fdb
new file mode 100755
index 000000000000..7a2b4edb936b
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird-fix-perm-fdb
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+RunUser=_firebird
+RunGroup=_firebird
+databasesconf='/etc/firebird/databases.conf'
+
+dir_sampledb='/tmp'
+dir_secdb='/var/lib/firebird/system'
+
+checkfdb(){
+[ -e "$@" ] || { echo "$@ - WARNING: No exists!" && return; }
+chpst -u $RunUser test -w "$@" && echo "$@ - OK" || { echo "$@ - FIX PERMISSIONS..."; chown $RunUser:$RunGroup "$@" && chmod 660 "$@"; }
+}
+
+for i in $(grep '^[^#]*=.*\.fdb.*$' "$databasesconf" | sed "s|#.*||; s|^\(.*= *\)\(.*\)$|\2|; s|\$(dir_sampledb)|$dir_sampledb|i; s|\$(dir_secdb)|$dir_secdb|i") # need more testing
+do
+	checkfdb "$i"
+done
+
+install /dev/null -m 644 -o $RunUser -g $RunGroup /etc/firebird/fb_guard
+
+echo 'DONE.'
diff --git a/srcpkgs/firebird3/files/firebird.xinetd b/srcpkgs/firebird3/files/firebird.xinetd
new file mode 100644
index 000000000000..f8f1f7fa348c
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird.xinetd
@@ -0,0 +1,16 @@
+# default: off
+# description: FirebirdSQL v3.0
+service gds-db
+{
+	disable         	= yes
+	flags			= REUSE NODELAY
+	socket_type		= stream
+	wait			= no
+	user			= _firebird
+# These lines cause problems with Windows XP SP2 clients
+# using default firewall configuration (SF#1065511)
+#	log_on_success		+= USERID
+#	log_on_failure 		+= USERID
+# Need ServerMode = Classic in /etc/firebird/firebird.conf
+	server			= /usr/lib/firebird/bin/firebird
+}
diff --git a/srcpkgs/firebird3/files/firebird3/run b/srcpkgs/firebird3/files/firebird3/run
new file mode 100755
index 000000000000..f9e37a7a3829
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird3/run
@@ -0,0 +1,3 @@
+#!/bin/sh
+chpst -u _firebird:_firebird test -w /etc/firebird/fb_guard || install /dev/null -m 644 -o _firebird -g _firebird /etc/firebird/fb_guard
+exec chpst -u _firebird:_firebird /usr/lib/firebird/bin/fbguard -forever
diff --git a/srcpkgs/firebird3/patches/fix-databases-conf.patch b/srcpkgs/firebird3/patches/fix-databases-conf.patch
new file mode 100644
index 000000000000..3a9a55fc1c00
--- /dev/null
+++ b/srcpkgs/firebird3/patches/fix-databases-conf.patch
@@ -0,0 +1,15 @@
+--- a/builds/install/misc/databases.conf.in
++++ b/builds/install/misc/databases.conf.in
+@@ -17,8 +17,9 @@
+ #
+ # Example Database:
+ #
+-employee.fdb = $(dir_sampleDb)/employee.fdb
+-employee = $(dir_sampleDb)/employee.fdb
++# employee.fdb = $(dir_sampleDb)/employee.fdb
++# employee = $(dir_sampleDb)/employee.fdb
++help = /usr/share/doc/firebird/help/help.fdb
+ 
+ #
+ # Master security database specific setup.
+
diff --git a/srcpkgs/firebird3/patches/fix-std-isnan.patch b/srcpkgs/firebird3/patches/fix-std-isnan.patch
deleted file mode 100644
index 9da229bdc86f..000000000000
--- a/srcpkgs/firebird3/patches/fix-std-isnan.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/src/common/classes/FpeControl.h	2020-06-26 12:02:51.000000000 +0200
-+++ b/src/common/classes/FpeControl.h	2020-09-17 06:04:30.516565361 +0200
-@@ -42,6 +42,10 @@
- #include <ieeefp.h>
- #endif
- 
-+#if !defined(__GLIBC__)
-+#define isinf std::isinf
-+#endif
-+
- namespace Firebird
- {
- 
diff --git a/srcpkgs/firebird3/template b/srcpkgs/firebird3/template
index 8f2285dc7729..5d4287a9534b 100644
--- a/srcpkgs/firebird3/template
+++ b/srcpkgs/firebird3/template
@@ -1,9 +1,7 @@
 # Template file for 'firebird3'
 pkgname=firebird3
-version=3.0.6.33328
+version=3.0.10
 revision=1
-_build=0
-_uver=${version//./_}
 build_style=gnu-configure
 build_helper="qemu"
 configure_args="--prefix=/usr
@@ -23,23 +21,37 @@ configure_args="--prefix=/usr
  --with-fbmisc
  --without-fbsample
  --without-fbsample-db
- --with-system-icu
  --with-system-editline"
-hostmakedepends="automake libtool pkg-config icu"
+# unrecognized options: --with-system-icu
+
+hostmakedepends="automake libtool pkg-config icu rsync"
 makedepends="boost-devel libedit-devel icu-devel ncurses-devel libatomic_ops-devel
  libtommath-devel zlib-devel"
 short_desc="Relational database offering many ANSI SQL standard features (V3)"
 maintainer="Orphaned <orphan@voidlinux.org>"
-license="custom"
+license="custom:IDPL, custom:Interbase-1.0"
 homepage="https://www.firebirdsql.org/en/start/"
-distfiles="https://github.com/FirebirdSQL/firebird/releases/download/R${_uver%_*}/Firebird-${version}-${_build}.tar.bz2"
-checksum=34c1d2a29bbaf288e682cd1b5f8083f2baf73f351062245ace0bee35a3f7d35f
+distfiles="https://github.com/FirebirdSQL/firebird/archive/refs/tags/v${version}.tar.gz"
+checksum=636bb3c4b4d982dd5fac7c8f2fb08789fa6d7815cecf6dd9cceb86743d7f10b9
 replaces="firebird>=0"
 nocross="Fails to build gpre_boot for host but builds for target"
 
 CFLAGS="-fno-strict-aliasing"
 CXXFLAGS="-fno-delete-null-pointer-checks -Wno-deprecated -Wno-deprecated-declarations"
 
+# Create firebird system user/group
+system_accounts="_firebird:84 _firebird:84"
+_firebird_homedir="/var/lib/firebird"
+_firebird_descr="Firebird Database Owner"
+triggers="system-accounts"
+
+conf_files="
+ /etc/firebird/databases.conf
+ /etc/firebird/fbtrace.conf
+ /etc/firebird/firebird.conf
+ /etc/firebird/plugins.conf
+ /var/lib/firebird/system/security3.fdb"
+
 if [ "$CROSS_BUILD" ]; then
 	configure_args+=" --enable-binreloc"
 	configure_args+=" ac_cv_func_sem_init=no"
@@ -87,7 +99,7 @@ pre_configure() {
 	# do not change ownership to root:root and
 	# do not change permissions to read-only
 	find -iname "*.sh.in" -exec sed -i "{}" \
-		-e 's;"`whoami`";"root";' \
+		-e 's;"$(whoami)";"root";' \
 		-e 's;chown root:root;#&;' \
 		-e 's;chown -R;#&;' \
 		-e 's;chmod 0444;chmod 0644;' \
@@ -97,8 +109,6 @@ pre_configure() {
 }
 
 do_install() {
-	local _lib _v0=${version%.*} _v1=${version%.*.*} _v2=${version%.*.*.*}
-
 	cd ${wrksrc}/gen
 	./install/makeInstallImage.sh
 
@@ -111,11 +121,13 @@ do_install() {
 	vlicense doc/license/IDPL.txt IDPL
 	vlicense doc/license/README.license.usage.txt LICENSE
 
-	cp -pR gen/buildroot/* ${DESTDIR}/
+	# cp -pR gen/buildroot/* ${DESTDIR}/
+	rsync -a --exclude '*.sh' gen/buildroot/ ${DESTDIR}/ # exclude old broken scripts
+	mv ${DESTDIR}/usr/bin/isql{,-fb} # fix conflict firebird3 and unixodbc 
 
-	# TODO: create superserver?
-	# system account?
-	# runit service?
+	vsv firebird3 # runit service, default ServerMode = Super, see: /etc/firebird/firebird.conf
+	vinstall ${FILESDIR}/firebird.xinetd 644 etc/xinetd.d firebird3 # xinetd, need ServerMode = Classic
+	vbin ${FILESDIR}/firebird-fix-perm-fdb
 	# Example https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=firebird-superserver
 }
 

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (7 preceding siblings ...)
  2023-03-17 13:09 ` onlylunix
@ 2023-03-17 13:11 ` onlylunix
  2023-03-19 16:02 ` [PR PATCH] [Updated] " onlylunix
                   ` (14 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: onlylunix @ 2023-03-17 13:11 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 150 bytes --]

New comment by onlylunix on void-packages repository

https://github.com/void-linux/void-packages/pull/42789#issuecomment-1473823837

Comment:
ready 

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR PATCH] [Updated] firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (8 preceding siblings ...)
  2023-03-17 13:11 ` onlylunix
@ 2023-03-19 16:02 ` onlylunix
  2023-03-27 20:52 ` onlylunix
                   ` (13 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: onlylunix @ 2023-03-19 16:02 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 519 bytes --]

There is an updated pull request by onlylunix against master on the void-packages repository

https://github.com/onlylunix/void-packages firebird3upd3.0.10-1
https://github.com/void-linux/void-packages/pull/42789

firebird3: update to 3.0.10
#### Testing the changes
- I tested the changes in this PR: YES

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC, i686-LIBC, x86_64-musl)

A patch file from https://github.com/void-linux/void-packages/pull/42789.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-firebird3upd3.0.10-1-42789.patch --]
[-- Type: text/x-diff, Size: 8045 bytes --]

From cb1f7d14da791392216b39eb8038cf913639c890 Mon Sep 17 00:00:00 2001
From: onlylunix <userpc2021@yandex.ru>
Date: Wed, 15 Mar 2023 20:00:21 +0300
Subject: [PATCH] firebird3: update to 3.0.10

---
 srcpkgs/firebird3/INSTALL                     |  9 ++++
 srcpkgs/firebird3/files/firebird-fix-perm-fdb | 22 ++++++++++
 srcpkgs/firebird3/files/firebird.xinetd       | 16 +++++++
 srcpkgs/firebird3/files/firebird3/run         |  3 ++
 .../patches/fix-databases-conf.patch          | 15 +++++++
 srcpkgs/firebird3/patches/fix-std-isnan.patch | 13 ------
 srcpkgs/firebird3/template                    | 42 ++++++++++++-------
 7 files changed, 92 insertions(+), 28 deletions(-)
 create mode 100644 srcpkgs/firebird3/INSTALL
 create mode 100755 srcpkgs/firebird3/files/firebird-fix-perm-fdb
 create mode 100644 srcpkgs/firebird3/files/firebird.xinetd
 create mode 100755 srcpkgs/firebird3/files/firebird3/run
 create mode 100644 srcpkgs/firebird3/patches/fix-databases-conf.patch
 delete mode 100644 srcpkgs/firebird3/patches/fix-std-isnan.patch

diff --git a/srcpkgs/firebird3/INSTALL b/srcpkgs/firebird3/INSTALL
new file mode 100644
index 000000000000..f8863ec6163d
--- /dev/null
+++ b/srcpkgs/firebird3/INSTALL
@@ -0,0 +1,9 @@
+case "${ACTION}" in
+post)
+	if [ "$UPDATE" = "no" ]
+	then
+		gsec -add sysdba -pw masterkey || true
+		firebird-fix-perm-fdb
+	fi
+	;;
+esac
diff --git a/srcpkgs/firebird3/files/firebird-fix-perm-fdb b/srcpkgs/firebird3/files/firebird-fix-perm-fdb
new file mode 100755
index 000000000000..7a2b4edb936b
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird-fix-perm-fdb
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+RunUser=_firebird
+RunGroup=_firebird
+databasesconf='/etc/firebird/databases.conf'
+
+dir_sampledb='/tmp'
+dir_secdb='/var/lib/firebird/system'
+
+checkfdb(){
+[ -e "$@" ] || { echo "$@ - WARNING: No exists!" && return; }
+chpst -u $RunUser test -w "$@" && echo "$@ - OK" || { echo "$@ - FIX PERMISSIONS..."; chown $RunUser:$RunGroup "$@" && chmod 660 "$@"; }
+}
+
+for i in $(grep '^[^#]*=.*\.fdb.*$' "$databasesconf" | sed "s|#.*||; s|^\(.*= *\)\(.*\)$|\2|; s|\$(dir_sampledb)|$dir_sampledb|i; s|\$(dir_secdb)|$dir_secdb|i") # need more testing
+do
+	checkfdb "$i"
+done
+
+install /dev/null -m 644 -o $RunUser -g $RunGroup /etc/firebird/fb_guard
+
+echo 'DONE.'
diff --git a/srcpkgs/firebird3/files/firebird.xinetd b/srcpkgs/firebird3/files/firebird.xinetd
new file mode 100644
index 000000000000..f8f1f7fa348c
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird.xinetd
@@ -0,0 +1,16 @@
+# default: off
+# description: FirebirdSQL v3.0
+service gds-db
+{
+	disable         	= yes
+	flags			= REUSE NODELAY
+	socket_type		= stream
+	wait			= no
+	user			= _firebird
+# These lines cause problems with Windows XP SP2 clients
+# using default firewall configuration (SF#1065511)
+#	log_on_success		+= USERID
+#	log_on_failure 		+= USERID
+# Need ServerMode = Classic in /etc/firebird/firebird.conf
+	server			= /usr/lib/firebird/bin/firebird
+}
diff --git a/srcpkgs/firebird3/files/firebird3/run b/srcpkgs/firebird3/files/firebird3/run
new file mode 100755
index 000000000000..f9e37a7a3829
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird3/run
@@ -0,0 +1,3 @@
+#!/bin/sh
+chpst -u _firebird:_firebird test -w /etc/firebird/fb_guard || install /dev/null -m 644 -o _firebird -g _firebird /etc/firebird/fb_guard
+exec chpst -u _firebird:_firebird /usr/lib/firebird/bin/fbguard -forever
diff --git a/srcpkgs/firebird3/patches/fix-databases-conf.patch b/srcpkgs/firebird3/patches/fix-databases-conf.patch
new file mode 100644
index 000000000000..3a9a55fc1c00
--- /dev/null
+++ b/srcpkgs/firebird3/patches/fix-databases-conf.patch
@@ -0,0 +1,15 @@
+--- a/builds/install/misc/databases.conf.in
++++ b/builds/install/misc/databases.conf.in
+@@ -17,8 +17,9 @@
+ #
+ # Example Database:
+ #
+-employee.fdb = $(dir_sampleDb)/employee.fdb
+-employee = $(dir_sampleDb)/employee.fdb
++# employee.fdb = $(dir_sampleDb)/employee.fdb
++# employee = $(dir_sampleDb)/employee.fdb
++help = /usr/share/doc/firebird/help/help.fdb
+ 
+ #
+ # Master security database specific setup.
+
diff --git a/srcpkgs/firebird3/patches/fix-std-isnan.patch b/srcpkgs/firebird3/patches/fix-std-isnan.patch
deleted file mode 100644
index 9da229bdc86f..000000000000
--- a/srcpkgs/firebird3/patches/fix-std-isnan.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/src/common/classes/FpeControl.h	2020-06-26 12:02:51.000000000 +0200
-+++ b/src/common/classes/FpeControl.h	2020-09-17 06:04:30.516565361 +0200
-@@ -42,6 +42,10 @@
- #include <ieeefp.h>
- #endif
- 
-+#if !defined(__GLIBC__)
-+#define isinf std::isinf
-+#endif
-+
- namespace Firebird
- {
- 
diff --git a/srcpkgs/firebird3/template b/srcpkgs/firebird3/template
index 8f2285dc7729..8f498070a33e 100644
--- a/srcpkgs/firebird3/template
+++ b/srcpkgs/firebird3/template
@@ -1,9 +1,7 @@
 # Template file for 'firebird3'
 pkgname=firebird3
-version=3.0.6.33328
+version=3.0.10
 revision=1
-_build=0
-_uver=${version//./_}
 build_style=gnu-configure
 build_helper="qemu"
 configure_args="--prefix=/usr
@@ -23,23 +21,37 @@ configure_args="--prefix=/usr
  --with-fbmisc
  --without-fbsample
  --without-fbsample-db
- --with-system-icu
  --with-system-editline"
-hostmakedepends="automake libtool pkg-config icu"
+# unrecognized options: --with-system-icu
+
+hostmakedepends="automake libtool pkg-config icu rsync"
 makedepends="boost-devel libedit-devel icu-devel ncurses-devel libatomic_ops-devel
  libtommath-devel zlib-devel"
 short_desc="Relational database offering many ANSI SQL standard features (V3)"
 maintainer="Orphaned <orphan@voidlinux.org>"
-license="custom"
+license="custom:IDPL, custom:Interbase-1.0"
 homepage="https://www.firebirdsql.org/en/start/"
-distfiles="https://github.com/FirebirdSQL/firebird/releases/download/R${_uver%_*}/Firebird-${version}-${_build}.tar.bz2"
-checksum=34c1d2a29bbaf288e682cd1b5f8083f2baf73f351062245ace0bee35a3f7d35f
+distfiles="https://github.com/FirebirdSQL/firebird/archive/refs/tags/v${version}.tar.gz"
+checksum=636bb3c4b4d982dd5fac7c8f2fb08789fa6d7815cecf6dd9cceb86743d7f10b9
 replaces="firebird>=0"
 nocross="Fails to build gpre_boot for host but builds for target"
 
 CFLAGS="-fno-strict-aliasing"
 CXXFLAGS="-fno-delete-null-pointer-checks -Wno-deprecated -Wno-deprecated-declarations"
 
+# Create firebird system user/group
+system_accounts="_firebird:84 _firebird:84"
+_firebird_homedir="/var/lib/firebird"
+_firebird_descr="Firebird Database Owner"
+triggers="system-accounts"
+
+conf_files="
+ /etc/firebird/databases.conf
+ /etc/firebird/fbtrace.conf
+ /etc/firebird/firebird.conf
+ /etc/firebird/plugins.conf
+ /var/lib/firebird/system/security3.fdb"
+
 if [ "$CROSS_BUILD" ]; then
 	configure_args+=" --enable-binreloc"
 	configure_args+=" ac_cv_func_sem_init=no"
@@ -87,7 +99,7 @@ pre_configure() {
 	# do not change ownership to root:root and
 	# do not change permissions to read-only
 	find -iname "*.sh.in" -exec sed -i "{}" \
-		-e 's;"`whoami`";"root";' \
+		-e 's;"$(whoami)";"root";' \
 		-e 's;chown root:root;#&;' \
 		-e 's;chown -R;#&;' \
 		-e 's;chmod 0444;chmod 0644;' \
@@ -97,8 +109,6 @@ pre_configure() {
 }
 
 do_install() {
-	local _lib _v0=${version%.*} _v1=${version%.*.*} _v2=${version%.*.*.*}
-
 	cd ${wrksrc}/gen
 	./install/makeInstallImage.sh
 
@@ -111,11 +121,13 @@ do_install() {
 	vlicense doc/license/IDPL.txt IDPL
 	vlicense doc/license/README.license.usage.txt LICENSE
 
-	cp -pR gen/buildroot/* ${DESTDIR}/
+	# cp -pR gen/buildroot/* ${DESTDIR}/
+	rsync -a --exclude '*.sh' gen/buildroot/ ${DESTDIR}/ # exclude old broken scripts
+	mv ${DESTDIR}/usr/bin/isql{,-fb} # fix conflict firebird3 and unixodbc
 
-	# TODO: create superserver?
-	# system account?
-	# runit service?
+	vsv firebird3 # runit service, default ServerMode = Super, see: /etc/firebird/firebird.conf
+	vinstall ${FILESDIR}/firebird.xinetd 644 etc/xinetd.d firebird3 # xinetd, need ServerMode = Classic
+	vbin ${FILESDIR}/firebird-fix-perm-fdb
 	# Example https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=firebird-superserver
 }
 

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (9 preceding siblings ...)
  2023-03-19 16:02 ` [PR PATCH] [Updated] " onlylunix
@ 2023-03-27 20:52 ` onlylunix
  2023-03-27 22:53 ` abenson
                   ` (12 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: onlylunix @ 2023-03-27 20:52 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 180 bytes --]

New comment by onlylunix on void-packages repository

https://github.com/void-linux/void-packages/pull/42789#issuecomment-1485845525

Comment:
Why do checks take so long to start?

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (10 preceding siblings ...)
  2023-03-27 20:52 ` onlylunix
@ 2023-03-27 22:53 ` abenson
  2023-06-24 14:58 ` [PR REVIEW] " Duncaen
                   ` (11 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: abenson @ 2023-03-27 22:53 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 217 bytes --]

New comment by abenson on void-packages repository

https://github.com/void-linux/void-packages/pull/42789#issuecomment-1485964048

Comment:
You're a first time contributor, so we have to manually trigger the checks.

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR REVIEW] firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (11 preceding siblings ...)
  2023-03-27 22:53 ` abenson
@ 2023-06-24 14:58 ` Duncaen
  2023-06-24 16:40 ` onlylunix
                   ` (10 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: Duncaen @ 2023-06-24 14:58 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 175 bytes --]

New review comment by Duncaen on void-packages repository

https://github.com/void-linux/void-packages/pull/42789#discussion_r1240838620

Comment:
Is a specific uid required?

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR REVIEW] firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (12 preceding siblings ...)
  2023-06-24 14:58 ` [PR REVIEW] " Duncaen
@ 2023-06-24 16:40 ` onlylunix
  2023-06-24 17:09 ` Duncaen
                   ` (9 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: onlylunix @ 2023-06-24 16:40 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 299 bytes --]

New review comment by onlylunix on void-packages repository

https://github.com/void-linux/void-packages/pull/42789#discussion_r1240893455

Comment:
> Is a specific uid required?

Databases may contain confidential information. So I think a permanent uid is desirable.
But you can do without it.

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR REVIEW] firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (13 preceding siblings ...)
  2023-06-24 16:40 ` onlylunix
@ 2023-06-24 17:09 ` Duncaen
  2023-06-24 17:29 ` onlylunix
                   ` (8 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: Duncaen @ 2023-06-24 17:09 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 430 bytes --]

New review comment by Duncaen on void-packages repository

https://github.com/void-linux/void-packages/pull/42789#discussion_r1240903465

Comment:
"dynamically" allocated uid's will be permanent until the administrator purges them manually. xbps will create the account on first install and if the package gets uninstalled the user gets disabled instead of removed specifically because of the issue with possibly left over files.

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR REVIEW] firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (14 preceding siblings ...)
  2023-06-24 17:09 ` Duncaen
@ 2023-06-24 17:29 ` onlylunix
  2023-06-24 17:34 ` onlylunix
                   ` (7 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: onlylunix @ 2023-06-24 17:29 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 227 bytes --]

New review comment by onlylunix on void-packages repository

https://github.com/void-linux/void-packages/pull/42789#discussion_r1240906188

Comment:
Okay, I'm also questioning the viability of a persistent UID. Make a fix?



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR REVIEW] firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (15 preceding siblings ...)
  2023-06-24 17:29 ` onlylunix
@ 2023-06-24 17:34 ` onlylunix
  2023-06-24 18:09 ` [PR PATCH] [Updated] " onlylunix
                   ` (6 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: onlylunix @ 2023-06-24 17:34 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 187 bytes --]

New review comment by onlylunix on void-packages repository

https://github.com/void-linux/void-packages/pull/42789#discussion_r1240906188

Comment:
Okay, I doubt it too. Make a fix?



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR PATCH] [Updated] firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (16 preceding siblings ...)
  2023-06-24 17:34 ` onlylunix
@ 2023-06-24 18:09 ` onlylunix
  2023-06-24 18:13 ` [PR REVIEW] " onlylunix
                   ` (5 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: onlylunix @ 2023-06-24 18:09 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 519 bytes --]

There is an updated pull request by onlylunix against master on the void-packages repository

https://github.com/onlylunix/void-packages firebird3upd3.0.10-1
https://github.com/void-linux/void-packages/pull/42789

firebird3: update to 3.0.10
#### Testing the changes
- I tested the changes in this PR: YES

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC, i686-LIBC, x86_64-musl)

A patch file from https://github.com/void-linux/void-packages/pull/42789.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-firebird3upd3.0.10-1-42789.patch --]
[-- Type: text/x-diff, Size: 8039 bytes --]

From 962976f2be03b7bee34895d4b4e58285a121510f Mon Sep 17 00:00:00 2001
From: onlylunix <userpc2021@yandex.ru>
Date: Wed, 15 Mar 2023 20:00:21 +0300
Subject: [PATCH] firebird3: update to 3.0.10

---
 srcpkgs/firebird3/INSTALL                     |  9 ++++
 srcpkgs/firebird3/files/firebird-fix-perm-fdb | 22 ++++++++++
 srcpkgs/firebird3/files/firebird.xinetd       | 16 +++++++
 srcpkgs/firebird3/files/firebird3/run         |  3 ++
 .../patches/fix-databases-conf.patch          | 15 +++++++
 srcpkgs/firebird3/patches/fix-std-isnan.patch | 13 ------
 srcpkgs/firebird3/template                    | 42 ++++++++++++-------
 7 files changed, 92 insertions(+), 28 deletions(-)
 create mode 100644 srcpkgs/firebird3/INSTALL
 create mode 100755 srcpkgs/firebird3/files/firebird-fix-perm-fdb
 create mode 100644 srcpkgs/firebird3/files/firebird.xinetd
 create mode 100755 srcpkgs/firebird3/files/firebird3/run
 create mode 100644 srcpkgs/firebird3/patches/fix-databases-conf.patch
 delete mode 100644 srcpkgs/firebird3/patches/fix-std-isnan.patch

diff --git a/srcpkgs/firebird3/INSTALL b/srcpkgs/firebird3/INSTALL
new file mode 100644
index 000000000000..f8863ec6163d
--- /dev/null
+++ b/srcpkgs/firebird3/INSTALL
@@ -0,0 +1,9 @@
+case "${ACTION}" in
+post)
+	if [ "$UPDATE" = "no" ]
+	then
+		gsec -add sysdba -pw masterkey || true
+		firebird-fix-perm-fdb
+	fi
+	;;
+esac
diff --git a/srcpkgs/firebird3/files/firebird-fix-perm-fdb b/srcpkgs/firebird3/files/firebird-fix-perm-fdb
new file mode 100755
index 000000000000..7a2b4edb936b
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird-fix-perm-fdb
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+RunUser=_firebird
+RunGroup=_firebird
+databasesconf='/etc/firebird/databases.conf'
+
+dir_sampledb='/tmp'
+dir_secdb='/var/lib/firebird/system'
+
+checkfdb(){
+[ -e "$@" ] || { echo "$@ - WARNING: No exists!" && return; }
+chpst -u $RunUser test -w "$@" && echo "$@ - OK" || { echo "$@ - FIX PERMISSIONS..."; chown $RunUser:$RunGroup "$@" && chmod 660 "$@"; }
+}
+
+for i in $(grep '^[^#]*=.*\.fdb.*$' "$databasesconf" | sed "s|#.*||; s|^\(.*= *\)\(.*\)$|\2|; s|\$(dir_sampledb)|$dir_sampledb|i; s|\$(dir_secdb)|$dir_secdb|i") # need more testing
+do
+	checkfdb "$i"
+done
+
+install /dev/null -m 644 -o $RunUser -g $RunGroup /etc/firebird/fb_guard
+
+echo 'DONE.'
diff --git a/srcpkgs/firebird3/files/firebird.xinetd b/srcpkgs/firebird3/files/firebird.xinetd
new file mode 100644
index 000000000000..f8f1f7fa348c
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird.xinetd
@@ -0,0 +1,16 @@
+# default: off
+# description: FirebirdSQL v3.0
+service gds-db
+{
+	disable         	= yes
+	flags			= REUSE NODELAY
+	socket_type		= stream
+	wait			= no
+	user			= _firebird
+# These lines cause problems with Windows XP SP2 clients
+# using default firewall configuration (SF#1065511)
+#	log_on_success		+= USERID
+#	log_on_failure 		+= USERID
+# Need ServerMode = Classic in /etc/firebird/firebird.conf
+	server			= /usr/lib/firebird/bin/firebird
+}
diff --git a/srcpkgs/firebird3/files/firebird3/run b/srcpkgs/firebird3/files/firebird3/run
new file mode 100755
index 000000000000..f9e37a7a3829
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird3/run
@@ -0,0 +1,3 @@
+#!/bin/sh
+chpst -u _firebird:_firebird test -w /etc/firebird/fb_guard || install /dev/null -m 644 -o _firebird -g _firebird /etc/firebird/fb_guard
+exec chpst -u _firebird:_firebird /usr/lib/firebird/bin/fbguard -forever
diff --git a/srcpkgs/firebird3/patches/fix-databases-conf.patch b/srcpkgs/firebird3/patches/fix-databases-conf.patch
new file mode 100644
index 000000000000..3a9a55fc1c00
--- /dev/null
+++ b/srcpkgs/firebird3/patches/fix-databases-conf.patch
@@ -0,0 +1,15 @@
+--- a/builds/install/misc/databases.conf.in
++++ b/builds/install/misc/databases.conf.in
+@@ -17,8 +17,9 @@
+ #
+ # Example Database:
+ #
+-employee.fdb = $(dir_sampleDb)/employee.fdb
+-employee = $(dir_sampleDb)/employee.fdb
++# employee.fdb = $(dir_sampleDb)/employee.fdb
++# employee = $(dir_sampleDb)/employee.fdb
++help = /usr/share/doc/firebird/help/help.fdb
+ 
+ #
+ # Master security database specific setup.
+
diff --git a/srcpkgs/firebird3/patches/fix-std-isnan.patch b/srcpkgs/firebird3/patches/fix-std-isnan.patch
deleted file mode 100644
index 9da229bdc86f..000000000000
--- a/srcpkgs/firebird3/patches/fix-std-isnan.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/src/common/classes/FpeControl.h	2020-06-26 12:02:51.000000000 +0200
-+++ b/src/common/classes/FpeControl.h	2020-09-17 06:04:30.516565361 +0200
-@@ -42,6 +42,10 @@
- #include <ieeefp.h>
- #endif
- 
-+#if !defined(__GLIBC__)
-+#define isinf std::isinf
-+#endif
-+
- namespace Firebird
- {
- 
diff --git a/srcpkgs/firebird3/template b/srcpkgs/firebird3/template
index 8f2285dc7729..7662897c4ff5 100644
--- a/srcpkgs/firebird3/template
+++ b/srcpkgs/firebird3/template
@@ -1,9 +1,7 @@
 # Template file for 'firebird3'
 pkgname=firebird3
-version=3.0.6.33328
+version=3.0.10
 revision=1
-_build=0
-_uver=${version//./_}
 build_style=gnu-configure
 build_helper="qemu"
 configure_args="--prefix=/usr
@@ -23,23 +21,37 @@ configure_args="--prefix=/usr
  --with-fbmisc
  --without-fbsample
  --without-fbsample-db
- --with-system-icu
  --with-system-editline"
-hostmakedepends="automake libtool pkg-config icu"
+# unrecognized options: --with-system-icu
+
+hostmakedepends="automake libtool pkg-config icu rsync"
 makedepends="boost-devel libedit-devel icu-devel ncurses-devel libatomic_ops-devel
  libtommath-devel zlib-devel"
 short_desc="Relational database offering many ANSI SQL standard features (V3)"
 maintainer="Orphaned <orphan@voidlinux.org>"
-license="custom"
+license="custom:IDPL, custom:Interbase-1.0"
 homepage="https://www.firebirdsql.org/en/start/"
-distfiles="https://github.com/FirebirdSQL/firebird/releases/download/R${_uver%_*}/Firebird-${version}-${_build}.tar.bz2"
-checksum=34c1d2a29bbaf288e682cd1b5f8083f2baf73f351062245ace0bee35a3f7d35f
+distfiles="https://github.com/FirebirdSQL/firebird/archive/refs/tags/v${version}.tar.gz"
+checksum=636bb3c4b4d982dd5fac7c8f2fb08789fa6d7815cecf6dd9cceb86743d7f10b9
 replaces="firebird>=0"
 nocross="Fails to build gpre_boot for host but builds for target"
 
 CFLAGS="-fno-strict-aliasing"
 CXXFLAGS="-fno-delete-null-pointer-checks -Wno-deprecated -Wno-deprecated-declarations"
 
+# Create firebird system user/group
+system_accounts="_firebird _firebird"
+_firebird_homedir="/var/lib/firebird"
+_firebird_descr="Firebird Database Owner"
+triggers="system-accounts"
+
+conf_files="
+ /etc/firebird/databases.conf
+ /etc/firebird/fbtrace.conf
+ /etc/firebird/firebird.conf
+ /etc/firebird/plugins.conf
+ /var/lib/firebird/system/security3.fdb"
+
 if [ "$CROSS_BUILD" ]; then
 	configure_args+=" --enable-binreloc"
 	configure_args+=" ac_cv_func_sem_init=no"
@@ -87,7 +99,7 @@ pre_configure() {
 	# do not change ownership to root:root and
 	# do not change permissions to read-only
 	find -iname "*.sh.in" -exec sed -i "{}" \
-		-e 's;"`whoami`";"root";' \
+		-e 's;"$(whoami)";"root";' \
 		-e 's;chown root:root;#&;' \
 		-e 's;chown -R;#&;' \
 		-e 's;chmod 0444;chmod 0644;' \
@@ -97,8 +109,6 @@ pre_configure() {
 }
 
 do_install() {
-	local _lib _v0=${version%.*} _v1=${version%.*.*} _v2=${version%.*.*.*}
-
 	cd ${wrksrc}/gen
 	./install/makeInstallImage.sh
 
@@ -111,11 +121,13 @@ do_install() {
 	vlicense doc/license/IDPL.txt IDPL
 	vlicense doc/license/README.license.usage.txt LICENSE
 
-	cp -pR gen/buildroot/* ${DESTDIR}/
+	# cp -pR gen/buildroot/* ${DESTDIR}/
+	rsync -a --exclude '*.sh' gen/buildroot/ ${DESTDIR}/ # exclude old broken scripts
+	mv ${DESTDIR}/usr/bin/isql{,-fb} # fix conflict firebird3 and unixodbc
 
-	# TODO: create superserver?
-	# system account?
-	# runit service?
+	vsv firebird3 # runit service, default ServerMode = Super, see: /etc/firebird/firebird.conf
+	vinstall ${FILESDIR}/firebird.xinetd 644 etc/xinetd.d firebird3 # xinetd, need ServerMode = Classic
+	vbin ${FILESDIR}/firebird-fix-perm-fdb
 	# Example https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=firebird-superserver
 }
 

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR REVIEW] firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (17 preceding siblings ...)
  2023-06-24 18:09 ` [PR PATCH] [Updated] " onlylunix
@ 2023-06-24 18:13 ` onlylunix
  2023-06-24 18:34 ` onlylunix
                   ` (4 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: onlylunix @ 2023-06-24 18:13 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 155 bytes --]

New review comment by onlylunix on void-packages repository

https://github.com/void-linux/void-packages/pull/42789#discussion_r1240912542

Comment:
Ready

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR REVIEW] firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (18 preceding siblings ...)
  2023-06-24 18:13 ` [PR REVIEW] " onlylunix
@ 2023-06-24 18:34 ` onlylunix
  2023-06-24 18:36 ` onlylunix
                   ` (3 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: onlylunix @ 2023-06-24 18:34 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 208 bytes --]

New review comment by onlylunix on void-packages repository

https://github.com/void-linux/void-packages/pull/42789#discussion_r1240915232

Comment:
There shouldn't be secrets! Only math, only hardcore, hehe

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR REVIEW] firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (19 preceding siblings ...)
  2023-06-24 18:34 ` onlylunix
@ 2023-06-24 18:36 ` onlylunix
  2023-07-10 14:21 ` [PR PATCH] [Updated] " onlylunix
                   ` (2 subsequent siblings)
  23 siblings, 0 replies; 25+ messages in thread
From: onlylunix @ 2023-06-24 18:36 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 208 bytes --]

New review comment by onlylunix on void-packages repository

https://github.com/void-linux/void-packages/pull/42789#discussion_r1240915232

Comment:
There shouldn't be secrets! Only math, only hardcore, hehe

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR PATCH] [Updated] firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (20 preceding siblings ...)
  2023-06-24 18:36 ` onlylunix
@ 2023-07-10 14:21 ` onlylunix
  2023-07-10 14:26 ` [PR PATCH] [Closed]: " onlylunix
  2023-07-10 21:50 ` onlylunix
  23 siblings, 0 replies; 25+ messages in thread
From: onlylunix @ 2023-07-10 14:21 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 519 bytes --]

There is an updated pull request by onlylunix against master on the void-packages repository

https://github.com/onlylunix/void-packages firebird3upd3.0.10-1
https://github.com/void-linux/void-packages/pull/42789

firebird3: update to 3.0.10
#### Testing the changes
- I tested the changes in this PR: YES

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC, i686-LIBC, x86_64-musl)

A patch file from https://github.com/void-linux/void-packages/pull/42789.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-firebird3upd3.0.10-1-42789.patch --]
[-- Type: text/x-diff, Size: 7674 bytes --]

From b3c3b9ea5e9a1de2a1a425cab31bda5929944c51 Mon Sep 17 00:00:00 2001
From: onlylunix <userpc2021@yandex.ru>
Date: Wed, 15 Mar 2023 20:00:21 +0300
Subject: [PATCH] firebird3: update to 3.0.10

---
 srcpkgs/firebird3/INSTALL                     |  9 +++++
 srcpkgs/firebird3/files/firebird-fix-perm-fdb | 22 +++++++++++
 srcpkgs/firebird3/files/firebird.xinetd       | 16 ++++++++
 srcpkgs/firebird3/files/firebird3/run         |  3 ++
 .../patches/fix-databases-conf.patch          | 15 ++++++++
 srcpkgs/firebird3/patches/fix-std-isnan.patch | 13 -------
 srcpkgs/firebird3/template                    | 37 ++++++++++++-------
 7 files changed, 89 insertions(+), 26 deletions(-)
 create mode 100644 srcpkgs/firebird3/INSTALL
 create mode 100755 srcpkgs/firebird3/files/firebird-fix-perm-fdb
 create mode 100644 srcpkgs/firebird3/files/firebird.xinetd
 create mode 100755 srcpkgs/firebird3/files/firebird3/run
 create mode 100644 srcpkgs/firebird3/patches/fix-databases-conf.patch
 delete mode 100644 srcpkgs/firebird3/patches/fix-std-isnan.patch

diff --git a/srcpkgs/firebird3/INSTALL b/srcpkgs/firebird3/INSTALL
new file mode 100644
index 000000000000..f8863ec6163d
--- /dev/null
+++ b/srcpkgs/firebird3/INSTALL
@@ -0,0 +1,9 @@
+case "${ACTION}" in
+post)
+	if [ "$UPDATE" = "no" ]
+	then
+		gsec -add sysdba -pw masterkey || true
+		firebird-fix-perm-fdb
+	fi
+	;;
+esac
diff --git a/srcpkgs/firebird3/files/firebird-fix-perm-fdb b/srcpkgs/firebird3/files/firebird-fix-perm-fdb
new file mode 100755
index 000000000000..7a2b4edb936b
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird-fix-perm-fdb
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+RunUser=_firebird
+RunGroup=_firebird
+databasesconf='/etc/firebird/databases.conf'
+
+dir_sampledb='/tmp'
+dir_secdb='/var/lib/firebird/system'
+
+checkfdb(){
+[ -e "$@" ] || { echo "$@ - WARNING: No exists!" && return; }
+chpst -u $RunUser test -w "$@" && echo "$@ - OK" || { echo "$@ - FIX PERMISSIONS..."; chown $RunUser:$RunGroup "$@" && chmod 660 "$@"; }
+}
+
+for i in $(grep '^[^#]*=.*\.fdb.*$' "$databasesconf" | sed "s|#.*||; s|^\(.*= *\)\(.*\)$|\2|; s|\$(dir_sampledb)|$dir_sampledb|i; s|\$(dir_secdb)|$dir_secdb|i") # need more testing
+do
+	checkfdb "$i"
+done
+
+install /dev/null -m 644 -o $RunUser -g $RunGroup /etc/firebird/fb_guard
+
+echo 'DONE.'
diff --git a/srcpkgs/firebird3/files/firebird.xinetd b/srcpkgs/firebird3/files/firebird.xinetd
new file mode 100644
index 000000000000..f8f1f7fa348c
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird.xinetd
@@ -0,0 +1,16 @@
+# default: off
+# description: FirebirdSQL v3.0
+service gds-db
+{
+	disable         	= yes
+	flags			= REUSE NODELAY
+	socket_type		= stream
+	wait			= no
+	user			= _firebird
+# These lines cause problems with Windows XP SP2 clients
+# using default firewall configuration (SF#1065511)
+#	log_on_success		+= USERID
+#	log_on_failure 		+= USERID
+# Need ServerMode = Classic in /etc/firebird/firebird.conf
+	server			= /usr/lib/firebird/bin/firebird
+}
diff --git a/srcpkgs/firebird3/files/firebird3/run b/srcpkgs/firebird3/files/firebird3/run
new file mode 100755
index 000000000000..f9e37a7a3829
--- /dev/null
+++ b/srcpkgs/firebird3/files/firebird3/run
@@ -0,0 +1,3 @@
+#!/bin/sh
+chpst -u _firebird:_firebird test -w /etc/firebird/fb_guard || install /dev/null -m 644 -o _firebird -g _firebird /etc/firebird/fb_guard
+exec chpst -u _firebird:_firebird /usr/lib/firebird/bin/fbguard -forever
diff --git a/srcpkgs/firebird3/patches/fix-databases-conf.patch b/srcpkgs/firebird3/patches/fix-databases-conf.patch
new file mode 100644
index 000000000000..3a9a55fc1c00
--- /dev/null
+++ b/srcpkgs/firebird3/patches/fix-databases-conf.patch
@@ -0,0 +1,15 @@
+--- a/builds/install/misc/databases.conf.in
++++ b/builds/install/misc/databases.conf.in
+@@ -17,8 +17,9 @@
+ #
+ # Example Database:
+ #
+-employee.fdb = $(dir_sampleDb)/employee.fdb
+-employee = $(dir_sampleDb)/employee.fdb
++# employee.fdb = $(dir_sampleDb)/employee.fdb
++# employee = $(dir_sampleDb)/employee.fdb
++help = /usr/share/doc/firebird/help/help.fdb
+ 
+ #
+ # Master security database specific setup.
+
diff --git a/srcpkgs/firebird3/patches/fix-std-isnan.patch b/srcpkgs/firebird3/patches/fix-std-isnan.patch
deleted file mode 100644
index 9da229bdc86f..000000000000
--- a/srcpkgs/firebird3/patches/fix-std-isnan.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/src/common/classes/FpeControl.h	2020-06-26 12:02:51.000000000 +0200
-+++ b/src/common/classes/FpeControl.h	2020-09-17 06:04:30.516565361 +0200
-@@ -42,6 +42,10 @@
- #include <ieeefp.h>
- #endif
- 
-+#if !defined(__GLIBC__)
-+#define isinf std::isinf
-+#endif
-+
- namespace Firebird
- {
- 
diff --git a/srcpkgs/firebird3/template b/srcpkgs/firebird3/template
index 8f2285dc7729..49cbce63941f 100644
--- a/srcpkgs/firebird3/template
+++ b/srcpkgs/firebird3/template
@@ -1,9 +1,7 @@
 # Template file for 'firebird3'
 pkgname=firebird3
-version=3.0.6.33328
+version=3.0.10
 revision=1
-_build=0
-_uver=${version//./_}
 build_style=gnu-configure
 build_helper="qemu"
 configure_args="--prefix=/usr
@@ -23,23 +21,36 @@ configure_args="--prefix=/usr
  --with-fbmisc
  --without-fbsample
  --without-fbsample-db
- --with-system-icu
  --with-system-editline"
-hostmakedepends="automake libtool pkg-config icu"
+# unrecognized options: --with-system-icu
+hostmakedepends="automake libtool pkg-config icu rsync"
 makedepends="boost-devel libedit-devel icu-devel ncurses-devel libatomic_ops-devel
  libtommath-devel zlib-devel"
 short_desc="Relational database offering many ANSI SQL standard features (V3)"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="custom"
 homepage="https://www.firebirdsql.org/en/start/"
-distfiles="https://github.com/FirebirdSQL/firebird/releases/download/R${_uver%_*}/Firebird-${version}-${_build}.tar.bz2"
-checksum=34c1d2a29bbaf288e682cd1b5f8083f2baf73f351062245ace0bee35a3f7d35f
+distfiles="https://github.com/FirebirdSQL/firebird/archive/refs/tags/v${version}.tar.gz"
+checksum=636bb3c4b4d982dd5fac7c8f2fb08789fa6d7815cecf6dd9cceb86743d7f10b9
 replaces="firebird>=0"
 nocross="Fails to build gpre_boot for host but builds for target"
 
 CFLAGS="-fno-strict-aliasing"
 CXXFLAGS="-fno-delete-null-pointer-checks -Wno-deprecated -Wno-deprecated-declarations"
 
+# Create firebird system user/group
+system_accounts="_firebird _firebird"
+_firebird_homedir="/var/lib/firebird"
+_firebird_descr="Firebird Database Owner"
+triggers="system-accounts"
+
+conf_files="
+ /etc/firebird/databases.conf
+ /etc/firebird/fbtrace.conf
+ /etc/firebird/firebird.conf
+ /etc/firebird/plugins.conf
+ /var/lib/firebird/system/security3.fdb"
+
 if [ "$CROSS_BUILD" ]; then
 	configure_args+=" --enable-binreloc"
 	configure_args+=" ac_cv_func_sem_init=no"
@@ -97,8 +108,6 @@ pre_configure() {
 }
 
 do_install() {
-	local _lib _v0=${version%.*} _v1=${version%.*.*} _v2=${version%.*.*.*}
-
 	cd ${wrksrc}/gen
 	./install/makeInstallImage.sh
 
@@ -111,11 +120,13 @@ do_install() {
 	vlicense doc/license/IDPL.txt IDPL
 	vlicense doc/license/README.license.usage.txt LICENSE
 
-	cp -pR gen/buildroot/* ${DESTDIR}/
+	# cp -pR gen/buildroot/* ${DESTDIR}/
+	rsync -a --exclude '*.sh' gen/buildroot/ ${DESTDIR}/ # exclude old broken scripts
+	mv ${DESTDIR}/usr/bin/isql{,-fb} # fix conflict firebird3 and unixodbc
 
-	# TODO: create superserver?
-	# system account?
-	# runit service?
+	vsv firebird3 # runit service, default ServerMode = Super, see: /etc/firebird/firebird.conf
+	vinstall ${FILESDIR}/firebird.xinetd 644 etc/xinetd.d firebird3 # xinetd, need ServerMode = Classic
+	vbin ${FILESDIR}/firebird-fix-perm-fdb
 	# Example https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=firebird-superserver
 }
 

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PR PATCH] [Closed]: firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (21 preceding siblings ...)
  2023-07-10 14:21 ` [PR PATCH] [Updated] " onlylunix
@ 2023-07-10 14:26 ` onlylunix
  2023-07-10 21:50 ` onlylunix
  23 siblings, 0 replies; 25+ messages in thread
From: onlylunix @ 2023-07-10 14:26 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 346 bytes --]

There's a closed pull request on the void-packages repository

firebird3: update to 3.0.10
https://github.com/void-linux/void-packages/pull/42789

Description:
#### Testing the changes
- I tested the changes in this PR: YES

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-LIBC, i686-LIBC, x86_64-musl)

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: firebird3: update to 3.0.10
  2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
                   ` (22 preceding siblings ...)
  2023-07-10 14:26 ` [PR PATCH] [Closed]: " onlylunix
@ 2023-07-10 21:50 ` onlylunix
  23 siblings, 0 replies; 25+ messages in thread
From: onlylunix @ 2023-07-10 21:50 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 212 bytes --]

New comment by onlylunix on void-packages repository

https://github.com/void-linux/void-packages/pull/42789#issuecomment-1629779302

Comment:
Create new PR https://github.com/void-linux/void-packages/pull/44976

^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2023-07-10 21:50 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-15 17:05 [PR PATCH] firebird3: update to 3.0.10 onlylunix
2023-03-15 17:12 ` abenson
2023-03-15 17:13 ` [PR REVIEW] " abenson
2023-03-15 17:14 ` abenson
2023-03-15 20:51 ` [PR PATCH] [Updated] " onlylunix
2023-03-15 21:12 ` onlylunix
2023-03-15 21:36 ` [PR REVIEW] " onlylunix
2023-03-16  3:55 ` [PR PATCH] [Updated] " onlylunix
2023-03-17 13:09 ` onlylunix
2023-03-17 13:11 ` onlylunix
2023-03-19 16:02 ` [PR PATCH] [Updated] " onlylunix
2023-03-27 20:52 ` onlylunix
2023-03-27 22:53 ` abenson
2023-06-24 14:58 ` [PR REVIEW] " Duncaen
2023-06-24 16:40 ` onlylunix
2023-06-24 17:09 ` Duncaen
2023-06-24 17:29 ` onlylunix
2023-06-24 17:34 ` onlylunix
2023-06-24 18:09 ` [PR PATCH] [Updated] " onlylunix
2023-06-24 18:13 ` [PR REVIEW] " onlylunix
2023-06-24 18:34 ` onlylunix
2023-06-24 18:36 ` onlylunix
2023-07-10 14:21 ` [PR PATCH] [Updated] " onlylunix
2023-07-10 14:26 ` [PR PATCH] [Closed]: " onlylunix
2023-07-10 21:50 ` onlylunix

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).