Merge pull request #160237 from helsinki-systems/drop/virtuoso

virtuoso: drop
This commit is contained in:
ajs124 2022-02-23 23:48:52 +01:00 committed by GitHub
commit 9748295636
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 3 additions and 311 deletions

View file

@ -82,7 +82,7 @@ in
git = 41;
#fourstore = 42; # dropped in 20.03
#fourstorehttp = 43; # dropped in 20.03
virtuoso = 44;
#virtuoso = 44; dropped module
#rtkit = 45; # dynamically allocated 2021-09-03
dovecot2 = 46;
dovenull2 = 47;

View file

@ -350,7 +350,6 @@
./services/databases/redis.nix
./services/databases/riak.nix
./services/databases/victoriametrics.nix
./services/databases/virtuoso.nix
./services/desktops/accountsservice.nix
./services/desktops/bamf.nix
./services/desktops/blueman.nix

View file

@ -87,10 +87,9 @@ with lib;
(mkRemovedOptionModule [ "services" "racoon" ] ''
The racoon module has been removed, because the software project was abandoned upstream.
'')
(mkRemovedOptionModule [ "services" "shellinabox" ] "The corresponding package was removed from nixpkgs.")
(mkRemovedOptionModule [ "services" "gogoclient" ] "The corresponding package was removed from nixpkgs.")
(mkRemovedOptionModule [ "services" "virtuoso" ] "The corresponding package was removed from nixpkgs.")
# Do NOT add any option renames here, see top of the file
];

View file

@ -1,99 +0,0 @@
{ config, lib, pkgs, ... }:
let
cfg = config.services.virtuoso;
virtuosoUser = "virtuoso";
stateDir = "/var/lib/virtuoso";
in
with lib;
{
###### interface
options = {
services.virtuoso = {
enable = mkEnableOption "Virtuoso Opensource database server";
config = mkOption {
type = types.lines;
default = "";
description = "Extra options to put into Virtuoso configuration file.";
};
parameters = mkOption {
type = types.lines;
default = "";
description = "Extra options to put into [Parameters] section of Virtuoso configuration file.";
};
listenAddress = mkOption {
type = types.str;
default = "1111";
example = "myserver:1323";
description = "ip:port or port to listen on.";
};
httpListenAddress = mkOption {
type = types.nullOr types.str;
default = null;
example = "myserver:8080";
description = "ip:port or port for Virtuoso HTTP server to listen on.";
};
dirsAllowed = mkOption {
type = types.nullOr types.str; # XXX Maybe use a list in the future?
default = null;
example = "/www, /home/";
description = "A list of directories Virtuoso is allowed to access";
};
};
};
###### implementation
config = mkIf cfg.enable {
users.users.${virtuosoUser} =
{ uid = config.ids.uids.virtuoso;
description = "virtuoso user";
home = stateDir;
};
systemd.services.virtuoso = {
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
preStart = ''
mkdir -p ${stateDir}
chown ${virtuosoUser} ${stateDir}
'';
script = ''
cd ${stateDir}
${pkgs.virtuoso}/bin/virtuoso-t +foreground +configfile ${pkgs.writeText "virtuoso.ini" cfg.config}
'';
};
services.virtuoso.config = ''
[Database]
DatabaseFile=${stateDir}/x-virtuoso.db
TransactionFile=${stateDir}/x-virtuoso.trx
ErrorLogFile=${stateDir}/x-virtuoso.log
xa_persistent_file=${stateDir}/x-virtuoso.pxa
[Parameters]
ServerPort=${cfg.listenAddress}
RunAs=${virtuosoUser}
${optionalString (cfg.dirsAllowed != null) "DirsAllowed=${cfg.dirsAllowed}"}
${cfg.parameters}
[HTTPServer]
${optionalString (cfg.httpListenAddress != null) "ServerPort=${cfg.httpListenAddress}"}
'';
};
}

View file

@ -1,27 +0,0 @@
{ lib, stdenv, fetchurl, cmake, qt4, clucene_core, librdf_redland, libiodbc
, pkg-config }:
stdenv.mkDerivation rec {
pname = "soprano";
version = "2.9.4";
src = fetchurl {
url = "mirror://sourceforge/soprano/${pname}-${version}.tar.bz2";
sha256 = "1rg0x7yg0a1cbnxz7kqk52580wla8jbnj4d4r3j7l7g7ajyny1k4";
};
patches = [ ./find-virtuoso.patch ];
# We disable the Java backend, since we do not need them and they make the closure size much bigger
buildInputs = [ qt4 clucene_core librdf_redland libiodbc ];
nativeBuildInputs = [ cmake pkg-config ];
meta = {
homepage = "http://soprano.sourceforge.net/";
description = "An object-oriented C++/Qt4 framework for RDF data";
license = "LGPL";
maintainers = with lib.maintainers; [ sander ];
inherit (qt4.meta) platforms;
};
}

View file

@ -1,86 +0,0 @@
From: Yury G. Kudryashov <urkud.urkud@gmail.com>
Subject: [PATCH] Find virtuoso if virtuoso-t is in PATH
---
backends/virtuoso/virtuosobackend.cpp | 31 ++++++++++++++++++++++---------
backends/virtuoso/virtuosobackend.h | 2 +-
2 files changed, 23 insertions(+), 10 deletions(-)
diff --git a/backends/virtuoso/virtuosobackend.cpp b/backends/virtuoso/virtuosobackend.cpp
index c245101..249958a 100644
--- a/backends/virtuoso/virtuosobackend.cpp
+++ b/backends/virtuoso/virtuosobackend.cpp
@@ -28,6 +28,7 @@
#include "odbcconnectionpool.h"
#include "sopranodirs.h"
+#include "soprano-config.h"
#include <QtCore/QDebug>
#include <QtCore/QtPlugin>
@@ -210,19 +211,19 @@ Soprano::BackendFeatures Soprano::Virtuoso::BackendPlugin::supportedFeatures() c
bool Soprano::Virtuoso::BackendPlugin::isAvailable() const
{
-#ifndef Q_OS_WIN
- if ( findVirtuosoDriver().isEmpty() ) {
- qDebug() << Q_FUNC_INFO << "could not find Virtuoso ODBC driver";
- return false;
- }
-#endif
-
QString virtuosoBin = locateVirtuosoBinary();
if ( virtuosoBin.isEmpty() ) {
qDebug() << Q_FUNC_INFO << "could not find virtuoso-t binary";
return false;
}
+#ifndef Q_OS_WIN
+ if ( findVirtuosoDriver( virtuosoBin ).isEmpty() ) {
+ qDebug() << Q_FUNC_INFO << "could not find Virtuoso ODBC driver";
+ return false;
+ }
+#endif
+
QString vs = determineVirtuosoVersion( virtuosoBin );
if ( vs.isEmpty() ) {
qDebug() << Q_FUNC_INFO << "Failed to determine version of the Virtuoso server at" << virtuosoBin;
@@ -267,9 +268,21 @@ QString Soprano::Virtuoso::BackendPlugin::locateVirtuosoBinary()
#ifndef Q_OS_WIN
// static
-QString Soprano::Virtuoso::BackendPlugin::findVirtuosoDriver()
+QString Soprano::Virtuoso::BackendPlugin::findVirtuosoDriver( const QString &virtuosoBinHint )
{
- return Soprano::findLibraryPath( "virtodbc_r", QStringList(), QStringList() << QLatin1String( "virtuoso/plugins/" ) << QLatin1String( "odbc/" ) );
+ QString virtuosoBin;
+ if (virtuosoBinHint.isEmpty())
+ virtuosoBin = locateVirtuosoBinary();
+ else
+ virtuosoBin = virtuosoBinHint;
+
+ QDir virtuosoBinDir = QFileInfo(virtuosoBin).absoluteDir();
+ return Soprano::findLibraryPath( "virtodbc_r",
+ QStringList()
+ << virtuosoBinDir.absoluteFilePath("../lib"SOPRANO_LIB_SUFFIX)
+ << virtuosoBinDir.absoluteFilePath("../lib"),
+ QStringList() << QLatin1String( "virtuoso/plugins/" ) <<
+ QLatin1String( "odbc/" ) );
}
#endif
diff --git a/backends/virtuoso/virtuosobackend.h b/backends/virtuoso/virtuosobackend.h
index 646b9f8..535fbb9 100644
--- a/backends/virtuoso/virtuosobackend.h
+++ b/backends/virtuoso/virtuosobackend.h
@@ -52,7 +52,7 @@ namespace Soprano {
#ifndef Q_OS_WIN
private:
- static QString findVirtuosoDriver();
+ static QString findVirtuosoDriver(const QString &virtuosoBinHint = QString());
#endif
};
}
--
tg: (2321148..) t/find-virtuoso (depends on: master)

View file

@ -1,46 +0,0 @@
{ lib, stdenv, fetchurl, libxml2, openssl, readline, gawk }:
stdenv.mkDerivation rec {
pname = "virtuoso-opensource";
version = "6.1.6";
src = fetchurl {
url = "mirror://sourceforge/virtuoso/${pname}-${version}.tar.gz";
sha256 = "0dx0lp7cngdchi0772hp93zzn6sdap7z8s3vay3mzb9xgf0sdgy6";
};
outputs = [ "out" "dev" "doc" ];
buildInputs = [ libxml2 openssl readline gawk ];
CPP = "${stdenv.cc}/bin/gcc -E";
configureFlags = [
"--enable-shared" "--disable-all-vads" "--with-readline=${readline.dev}"
"--disable-hslookup" "--disable-wbxml2" "--without-iodbc"
"--enable-openssl=${openssl.dev}"
];
postInstall = ''
echo Moving documentation
mkdir -pv $out/share/doc
mv -v $out/share/virtuoso/doc $out/share/doc/${pname}-${version}
echo Removing jars and empty directories
find $out -name "*.a" -delete -o -name "*.jar" -delete -o -type d -empty -delete
for f in $out/lib/*.la; do
echo "Fixing $f"
substituteInPlace $f \
--replace "${readline.dev}" "${readline.out}/lib" \
--replace "${openssl.dev}/lib" "${openssl.out}/lib"
done
'';
meta = with lib; {
description = "SQL/RDF database used by, e.g., KDE-nepomuk";
homepage = "http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/";
platforms = platforms.linux;
license = licenses.gpl2;
};
}

View file

@ -1,37 +0,0 @@
{ lib, stdenv, fetchurl, libxml2, openssl, readline, gawk }:
stdenv.mkDerivation rec {
pname = "virtuoso-opensource";
version = "7.2.4.2";
src = fetchurl {
url = "mirror://sourceforge/virtuoso/${pname}-${version}.tar.gz";
sha256 = "12dqam1gc1v93l0bj0vlpvjqppki6y1hqrlznywxnw0rrz9pb002";
};
buildInputs = [ libxml2 openssl readline gawk ];
CPP = "${stdenv.cc}/bin/gcc -E";
configureFlags = [
"--enable-shared" "--disable-all-vads" "--with-readline=${readline.dev}"
"--disable-hslookup" "--disable-wbxml2" "--without-iodbc"
"--enable-openssl=${openssl.dev}"
];
postInstall=''
echo Moving documentation
mkdir -pv $out/share/doc
mv -v $out/share/virtuoso/doc $out/share/doc/${pname}-${version}
echo Removing jars and empty directories
find $out -name "*.a" -delete -o -name "*.jar" -delete -o -type d -empty -delete
'';
meta = with lib; {
description = "SQL/RDF database used by, e.g., KDE-nepomuk";
homepage = "http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/";
#configure: The current version [...] can only be built on 64bit platforms
platforms = [ "x86_64-linux" ];
license = licenses.gpl2;
};
}

View file

@ -1251,6 +1251,7 @@ mapAliases ({
vimprobable2 = throw "vimprobable2 has been removed from nixpkgs. It relied on webkitgtk24x that has been removed."; # Added 2019-12-05
vimprobable2-unwrapped = vimprobable2; # Added 2019-12-05
virtinst = throw "virtinst has been removed, as it's included in virt-manager"; # Added 2021-07-21
virtuoso = throw "virtuoso has been removed, because it was unmaintained in nixpkgs"; # added 2021-12-15
virtmanager = virt-manager; # Added 2019-10-29
virtmanager-qt = virt-manager-qt; # Added 2019-10-29
virtviewer = virt-viewer; # Added 2015-12-24

View file

@ -20048,8 +20048,6 @@ with pkgs;
sope = callPackage ../development/libraries/sope { };
soprano = callPackage ../development/libraries/soprano { };
sord = callPackage ../development/libraries/sord {};
soundtouch = callPackage ../development/libraries/soundtouch {};
@ -22048,16 +22046,6 @@ with pkgs;
virtualenv-clone = with python3Packages; toPythonApplication virtualenv-clone;
virtuoso6 = callPackage ../servers/sql/virtuoso/6.x.nix {
openssl = openssl_1_0_2;
};
virtuoso7 = callPackage ../servers/sql/virtuoso/7.x.nix {
openssl = openssl_1_0_2;
};
virtuoso = virtuoso6;
vsftpd = callPackage ../servers/ftp/vsftpd { };
wallabag = callPackage ../servers/web-apps/wallabag { };