firebirdSuper settings
document why its better to not use --with-system-icu See patch for nixos adding firebird service Signed-off-by: Marc Weber <marco-oweber@gmx.de>
This commit is contained in:
parent
2a798997a3
commit
cf762c8f58
@ -1,6 +1,7 @@
|
||||
{stdenv, fetchurl}:
|
||||
|
||||
let
|
||||
|
||||
pname = "icu4c";
|
||||
version = "51.1";
|
||||
in
|
||||
|
@ -1,4 +1,20 @@
|
||||
{stdenv, fetchurl, libedit, icu
|
||||
{stdenv, fetchurl, libedit, ncurses, automake, autoconf, libtool
|
||||
,
|
||||
# icu = null: use icu which comes with firebird
|
||||
|
||||
# icu = pkgs.icu => you may have trouble sharing database files with windows
|
||||
# users if "Collation unicode" columns are being used
|
||||
# windows icu version is *30.dll, however neither the icu 3.0 nor the 3.6
|
||||
# sources look close to what ships with this package.
|
||||
# Thus I think its best to trust firebird devs and use their version
|
||||
|
||||
# icu version missmatch may cause such error when selecting from a table:
|
||||
# "Collation unicode for character set utf8 is not installed"
|
||||
|
||||
# icu 3.0 can still be build easily by nix (by dropping the #elif case and
|
||||
# make | make)
|
||||
icu ? null
|
||||
|
||||
, superServer ? false
|
||||
, port ? 3050
|
||||
, serviceName ? "gds_db"
|
||||
@ -6,9 +22,9 @@
|
||||
|
||||
/*
|
||||
there are 3 ways to use firebird:
|
||||
a) superserver
|
||||
a) superserver
|
||||
- one process, one thread for each connection
|
||||
b) classic
|
||||
b) classic
|
||||
- is built by default
|
||||
- one process for each connection
|
||||
- on linux direct io operations (?)
|
||||
@ -22,23 +38,38 @@
|
||||
*/
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "2.5.2.26539-0";
|
||||
version = "2.5.2.26540-0";
|
||||
name = "firebird-${version}";
|
||||
|
||||
# enableParallelBuilding = false; build fails
|
||||
|
||||
# http://tracker.firebirdsql.org/browse/CORE-3246
|
||||
preConfigure = ''
|
||||
makeFlags="$makeFlags CPU=$NIX_BUILD_CORES"
|
||||
'';
|
||||
|
||||
configureFlags =
|
||||
[ "--with-serivec-port=${builtins.toString port}"
|
||||
"--with-service-name=${serviceName}"
|
||||
# "--with-system-icu"
|
||||
# "--with-system-editline"
|
||||
# "--disable-static"
|
||||
"--with-system-editline"
|
||||
"--with-fblog=/var/log/firebird"
|
||||
"--with-fbconf=/etc/firebird"
|
||||
"--with-fbsecure-db=/var/db/firebird/system"
|
||||
]
|
||||
++ (stdenv.lib.optional superServer "--enable-superserver=true");
|
||||
++ (stdenv.lib.optional (icu != null) "--with-system-icu")
|
||||
++ (stdenv.lib.optional superServer "--enable-superserver");
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/firebird/Firebird-${version}.tar.bz2";
|
||||
sha256 = "1j5bcfl35hr6i4lcd08zls19bal2js3ar16gnwkzbhwxkxbyb43b";
|
||||
sha256 = "0887a813wffp44hnc2gmwbc4ylpqw3fh3hz3bf6q3648344a9fdv";
|
||||
};
|
||||
|
||||
buildInputs = [libedit icu];
|
||||
# configurePhase = ''
|
||||
# sed -i 's@cp /usr/share/automake-.*@@' autogen.sh
|
||||
# sh autogen.sh $configureFlags --prefix=$out
|
||||
# '';
|
||||
buildInputs = [libedit icu automake autoconf libtool];
|
||||
|
||||
# TODO: Probably this hase to be tidied up..
|
||||
# make install requires beeing. disabling the root checks
|
||||
|
@ -5970,7 +5970,8 @@ let
|
||||
|
||||
fingerd_bsd = callPackage ../servers/fingerd/bsd-fingerd { };
|
||||
|
||||
firebird = callPackage ../servers/firebird { };
|
||||
firebird = callPackage ../servers/firebird { icu = null; };
|
||||
firebirdSuper = callPackage ../servers/firebird { superServer = true; };
|
||||
|
||||
freepops = callPackage ../servers/mail/freepops { };
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user