Github messages for voidlinux
 help / color / mirror / Atom feed
From: onlylunix <onlylunix@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] firebird3: update to 3.0.10
Date: Fri, 17 Mar 2023 14:09:59 +0100	[thread overview]
Message-ID: <20230317130959.04TmsEbRB7myQS9gyKWbf3HIH1Du_zS9k8-tZ53lvWs@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-42789@inbox.vuxu.org>

[-- 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
 }
 

  parent reply	other threads:[~2023-03-17 13:10 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-15 17:05 [PR PATCH] " 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 [this message]
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
  -- strict thread matches above, loose matches on Subject: below --
2023-07-10 21:49 [PR PATCH] " onlylunix
2023-07-11 13:45 ` [PR PATCH] [Updated] " onlylunix
2023-08-07 18:55 ` onlylunix
2023-03-14  3:10 [PR PATCH] " onlylunix
2023-03-14 21:55 ` [PR PATCH] [Updated] " onlylunix
2023-03-14 23:11 ` onlylunix
2023-03-14 23:21 ` onlylunix

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230317130959.04TmsEbRB7myQS9gyKWbf3HIH1Du_zS9k8-tZ53lvWs@z \
    --to=onlylunix@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).