mirror of
https://github.com/SebastianWendel/nixpkgs.git
synced 2024-09-20 04:19:00 +02:00
fuppes: remove obsolete broken package and service
This commit is contained in:
parent
d89454bb79
commit
af50b03f50
|
@ -100,8 +100,6 @@
|
|||
./services/amqp/activemq/default.nix
|
||||
./services/amqp/rabbitmq.nix
|
||||
./services/audio/alsa.nix
|
||||
# Disabled as fuppes no longer builds.
|
||||
# ./services/audio/fuppes.nix
|
||||
./services/audio/icecast.nix
|
||||
./services/audio/liquidsoap.nix
|
||||
./services/audio/mpd.nix
|
||||
|
|
|
@ -1,115 +0,0 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
cfg = config.services.fuppesd;
|
||||
in
|
||||
|
||||
with lib;
|
||||
|
||||
{
|
||||
options = {
|
||||
services.fuppesd = {
|
||||
enable = mkOption {
|
||||
default = false;
|
||||
type = with types; bool;
|
||||
description = ''
|
||||
Enables Fuppes (UPnP A/V Media Server). Can be used to watch
|
||||
photos, video and listen to music from a phone/tv connected to the
|
||||
local network.
|
||||
'';
|
||||
};
|
||||
|
||||
name = mkOption {
|
||||
example = "Media Center";
|
||||
type = types.str;
|
||||
description = ''
|
||||
Enables Fuppes (UPnP A/V Media Server). Can be used to watch
|
||||
photos, video and listen to music from a phone/tv connected to the
|
||||
local network.
|
||||
'';
|
||||
};
|
||||
|
||||
log = {
|
||||
level = mkOption {
|
||||
default = 0;
|
||||
example = 3;
|
||||
type = with types; uniq int;
|
||||
description = ''
|
||||
Logging level of fuppes, An integer between 0 and 3.
|
||||
'';
|
||||
};
|
||||
|
||||
file = mkOption {
|
||||
default = "/var/log/fuppes.log";
|
||||
type = types.str;
|
||||
description = ''
|
||||
File which will contains the log produced by the daemon.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = mkOption {
|
||||
example = "/etc/fuppes/fuppes.cfg";
|
||||
type = types.str;
|
||||
description = ''
|
||||
Mutable configuration file which can be edited with the web
|
||||
interface. Due to possible modification, double quote the full
|
||||
path of the filename stored in your filesystem to avoid attempts
|
||||
to modify the content of the nix store.
|
||||
'';
|
||||
};
|
||||
|
||||
vfolder = mkOption {
|
||||
example = literalExample "/etc/fuppes/vfolder.cfg";
|
||||
description = ''
|
||||
XML file describing the layout of virtual folder visible by the
|
||||
client.
|
||||
'';
|
||||
};
|
||||
|
||||
database = mkOption {
|
||||
default = "/var/lib/fuppes/fuppes.db";
|
||||
type = types.str;
|
||||
description = ''
|
||||
Database file which index all shared files.
|
||||
'';
|
||||
};
|
||||
|
||||
## At the moment, no plugins are packaged.
|
||||
/*
|
||||
plugins = mkOption {
|
||||
type = with types; listOf package;
|
||||
description = ''
|
||||
List of Fuppes plugins.
|
||||
'';
|
||||
};
|
||||
*/
|
||||
|
||||
user = mkOption {
|
||||
default = "root"; # The default is not secure.
|
||||
example = "fuppes";
|
||||
type = types.str;
|
||||
description = ''
|
||||
Name of the user which own the configuration files and under which
|
||||
the fuppes daemon will be executed.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
jobs.fuppesd = {
|
||||
description = "UPnP A/V Media Server. (${cfg.name})";
|
||||
startOn = "ip-up";
|
||||
daemonType = "fork";
|
||||
exec = ''/var/setuid-wrappers/sudo -u ${cfg.user} -- ${pkgs.fuppes}/bin/fuppesd --friendly-name ${cfg.name} --log-level ${toString cfg.log.level} --log-file ${cfg.log.file} --config-file ${cfg.config} --vfolder-config-file ${cfg.vfolder} --database-file ${cfg.database}'';
|
||||
};
|
||||
|
||||
services.fuppesd.name = mkDefault config.networking.hostName;
|
||||
|
||||
services.fuppesd.vfolder = mkDefault ./fuppes/vfolder.cfg;
|
||||
|
||||
security.sudo.enable = true;
|
||||
};
|
||||
}
|
|
@ -1,155 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<fuppes_vfolder_config version="0.2">
|
||||
|
||||
<vfolder_layout device="default" enabled="false">
|
||||
|
||||
<vfolder name="Genre">
|
||||
<vfolders property="genre">
|
||||
<items type="audioItem" />
|
||||
</vfolders>
|
||||
</vfolder>
|
||||
|
||||
<vfolder name="Genre/Artists">
|
||||
<vfolders property="genre">
|
||||
<vfolders property="artist">
|
||||
<items type="audioItem" />
|
||||
</vfolders>
|
||||
</vfolders>
|
||||
</vfolder>
|
||||
|
||||
<vfolder name="Artists/Albums">
|
||||
<vfolders property="artist">
|
||||
<vfolders property="album">
|
||||
<items type="audioItem" />
|
||||
</vfolders>
|
||||
</vfolders>
|
||||
</vfolder>
|
||||
|
||||
<vfolder name="ABC/Artists/Albums">
|
||||
<vfolders split="ABC">
|
||||
<vfolders property="artist">
|
||||
<vfolders property="album">
|
||||
<items type="audioItem" />
|
||||
</vfolders>
|
||||
</vfolders>
|
||||
</vfolders>
|
||||
</vfolder>
|
||||
|
||||
<vfolder name="Photos">
|
||||
<vfolder name="All">
|
||||
<items type="imageItem" />
|
||||
</vfolder>
|
||||
<vfolder name="Folders">
|
||||
<folders filter="contains(imageItem)" />
|
||||
</vfolder>
|
||||
</vfolder>
|
||||
|
||||
<vfolder name="Videos">
|
||||
<vfolder name="All">
|
||||
<items type="videoItem" />
|
||||
</vfolder>
|
||||
<vfolder name="Folders">
|
||||
<folders filter="contains(videoItem)" />
|
||||
</vfolder>
|
||||
</vfolder>
|
||||
|
||||
<vfolder name="shared dirs">
|
||||
<shared_dirs full_extend="true" />
|
||||
</vfolder>
|
||||
|
||||
</vfolder_layout>
|
||||
|
||||
<vfolder_layout device="Xbox 360" enabled="false">
|
||||
|
||||
<vfolder name="Music" id="1">
|
||||
<vfolder name="Album" id="7">
|
||||
<vfolders property="album">
|
||||
<items type="audioItem" />
|
||||
</vfolders>
|
||||
</vfolder>
|
||||
|
||||
<vfolder name="All Music" id="4">
|
||||
<items type="audioItem" />
|
||||
</vfolder>
|
||||
|
||||
<vfolder name="Artist" id="6">
|
||||
<vfolders property="artist">
|
||||
<items type="audioItem" />
|
||||
</vfolders>
|
||||
</vfolder>
|
||||
|
||||
<vfolder name="Folders" id="20">
|
||||
<folders filter="contains(audioItem)" />
|
||||
</vfolder>
|
||||
|
||||
<vfolder name="Genre" id="5">
|
||||
<vfolders property="genre">
|
||||
<items type="audioItem" />
|
||||
</vfolders>
|
||||
</vfolder>
|
||||
|
||||
<vfolder name="Playlist" id="15" />
|
||||
</vfolder>
|
||||
|
||||
<vfolder name="Pictures" id="3">
|
||||
<vfolder name="Album" id="13" />
|
||||
|
||||
<vfolder name="All Pictures" id="11">
|
||||
<items type="imageItem" />
|
||||
</vfolder>
|
||||
|
||||
<vfolder name="Date Taken" id="12" />
|
||||
|
||||
<vfolder name="Folders" id="22">
|
||||
<folders filter="contains(imageItem)" />
|
||||
</vfolder>
|
||||
</vfolder>
|
||||
|
||||
<vfolder name="Playlists" id="18">
|
||||
<vfolder name="All Playlists" id="19" />
|
||||
<vfolder name="Folders" id="23" />
|
||||
</vfolder>
|
||||
|
||||
<vfolder name="Video" id="2">
|
||||
<vfolder name="Actor" id="10" />
|
||||
<vfolder name="Album" id="14" />
|
||||
<vfolder name="All Video" id="8">
|
||||
<items type="videoItem" />
|
||||
</vfolder>
|
||||
<vfolder name="Folders" id="21">
|
||||
<folders filter="contains(videoItem)" />
|
||||
</vfolder>
|
||||
<vfolder name="Genre" id="9" />
|
||||
</vfolder>
|
||||
|
||||
</vfolder_layout>
|
||||
|
||||
<vfolder_layout device="Yamaha" enabled="false" create_references="true" >
|
||||
|
||||
<vfolder name="Playlists" />
|
||||
|
||||
<vfolder name="Artists">
|
||||
<vfolders property="artist">
|
||||
<items type="audioItem" />
|
||||
</vfolders>
|
||||
</vfolder>
|
||||
|
||||
<vfolder name="Albums">
|
||||
<vfolders property="album">
|
||||
<items type="audioItem" />
|
||||
</vfolders>
|
||||
</vfolder>
|
||||
|
||||
<vfolder name="Songs">
|
||||
<items type="audioItem" />
|
||||
</vfolder>
|
||||
|
||||
<vfolder name="Genres">
|
||||
<vfolders property="genre">
|
||||
<items type="audioItem" />
|
||||
</vfolders>
|
||||
</vfolder>
|
||||
|
||||
</vfolder_layout>
|
||||
|
||||
</fuppes_vfolder_config>
|
|
@ -1,56 +0,0 @@
|
|||
{stdenv, fetchurl, pkgconfig, pcre, libxml2, sqlite, ffmpeg, imagemagick,
|
||||
exiv2, mp4v2, lame, libvorbis, flac, libmad, faad2}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "fuppes-0.660";
|
||||
src = fetchurl {
|
||||
url = mirror://sourceforge/project/fuppes/fuppes/SVN-660/fuppes-0.660.tar.gz;
|
||||
sha256 = "1c385b29878927e5f1e55ae2c9ad284849d1522d9517a88e34feb92bd5195173";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./fuppes-faad-exanpse-backward-symbols-macro.patch
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
pkgconfig pcre libxml2 sqlite ffmpeg imagemagick exiv2 mp4v2 lame
|
||||
libvorbis flac libmad faad2
|
||||
];
|
||||
|
||||
configureFlags = [
|
||||
"--enable-ffmpegthumbnailer"
|
||||
"--enable-magickwand"
|
||||
"--enable-exiv2"
|
||||
"--enable-transcoder-ffmpeg"
|
||||
"--enable-mp4v2"
|
||||
"--enable-lame"
|
||||
"--enable-vorbis"
|
||||
"--enable-flac"
|
||||
"--enable-mad"
|
||||
"--enable-faad"
|
||||
];
|
||||
|
||||
postFixup = ''
|
||||
patchelf --set-rpath "$(patchelf --print-rpath $out/bin/fuppes):${faad2}/lib" $out/bin/fuppes
|
||||
patchelf --set-rpath "$(patchelf --print-rpath $out/bin/fuppesd):${faad2}/lib" $out/bin/fuppesd
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "UPnP A/V Media Server";
|
||||
longDescription = ''
|
||||
FUPPES is a free, multiplatform UPnP A/V Media Server.
|
||||
|
||||
FUPPES supports a wide range of UPnP MediaRenderers as well as
|
||||
on-the-fly transcoding of various audio, video and image formats.
|
||||
|
||||
FUPPES also includes basic DLNA support.
|
||||
'';
|
||||
homepage = http://fuppes.ulrich-voelkel.de/;
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.pierron ];
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
|
||||
broken = true;
|
||||
};
|
||||
}
|
|
@ -1,91 +0,0 @@
|
|||
diff -x _inst -x _build -x .svn -ur fuppes-0.660/src/lib/Transcoding/FaadWrapper.cpp fuppes-0.660.new/src/lib/Transcoding/FaadWrapper.cpp
|
||||
--- fuppes-0.660/src/lib/Transcoding/FaadWrapper.cpp 2009-11-19 10:16:25.000000000 +0100
|
||||
+++ fuppes-0.660.new/src/lib/Transcoding/FaadWrapper.cpp 2011-01-30 22:25:34.171263052 +0100
|
||||
@@ -329,13 +329,19 @@
|
||||
|
||||
CloseFile();
|
||||
}
|
||||
-
|
||||
+
|
||||
+// These macros are used to convert old function names to new ones based on
|
||||
+// the #define declared in faad headers. The two-level macro are used to
|
||||
+// expanse the macro which are gave to to_str.
|
||||
+#define to_str_(fun) #fun
|
||||
+#define to_str(fun) to_str_(fun)
|
||||
+
|
||||
bool CFaadWrapper::LoadLib()
|
||||
{
|
||||
#ifdef WIN32
|
||||
- std::string sLibName = "libfaad-0.dll";
|
||||
+ std::string sLibName = "libfaad-2.dll";
|
||||
#else
|
||||
- std::string sLibName = "libfaad.so.0";
|
||||
+ std::string sLibName = "libfaad.so.2";
|
||||
#endif
|
||||
|
||||
if(!CSharedConfig::Shared()->FaadLibName().empty()) {
|
||||
@@ -350,54 +356,54 @@
|
||||
return false;
|
||||
}
|
||||
|
||||
- m_faacDecOpen = (faacDecOpen_t)FuppesGetProcAddress(m_LibHandle, "faacDecOpen");
|
||||
+ m_faacDecOpen = (faacDecOpen_t)FuppesGetProcAddress(m_LibHandle, to_str(faacDecOpen));
|
||||
if(!m_faacDecOpen) {
|
||||
CSharedLog::Shared()->Log(L_EXT, "cannot load symbol 'faacDecOpen'", __FILE__, __LINE__);
|
||||
return false;
|
||||
}
|
||||
|
||||
- m_faacDecGetErrorMessage = (faacDecGetErrorMessage_t)FuppesGetProcAddress(m_LibHandle, "faacDecGetErrorMessage");
|
||||
+ m_faacDecGetErrorMessage = (faacDecGetErrorMessage_t)FuppesGetProcAddress(m_LibHandle, to_str(faacDecGetErrorMessage));
|
||||
if(!m_faacDecGetErrorMessage) {
|
||||
CSharedLog::Shared()->Log(L_EXT, "cannot load symbol 'faacDecGetErrorMessage'", __FILE__, __LINE__);
|
||||
return false;
|
||||
}
|
||||
|
||||
- m_faacDecGetCurrentConfiguration = (faacDecGetCurrentConfiguration_t)FuppesGetProcAddress(m_LibHandle, "faacDecGetCurrentConfiguration");
|
||||
+ m_faacDecGetCurrentConfiguration = (faacDecGetCurrentConfiguration_t)FuppesGetProcAddress(m_LibHandle, to_str(faacDecGetCurrentConfiguration));
|
||||
if(!m_faacDecGetCurrentConfiguration) {
|
||||
CSharedLog::Shared()->Log(L_EXT, "cannot load symbol 'faacDecGetCurrentConfiguration'", __FILE__, __LINE__);
|
||||
}
|
||||
|
||||
- m_faacDecSetConfiguration = (faacDecSetConfiguration_t)FuppesGetProcAddress(m_LibHandle, "faacDecSetConfiguration");
|
||||
+ m_faacDecSetConfiguration = (faacDecSetConfiguration_t)FuppesGetProcAddress(m_LibHandle, to_str(faacDecSetConfiguration));
|
||||
if(!m_faacDecSetConfiguration) {
|
||||
CSharedLog::Shared()->Log(L_EXT, "cannot load symbol 'faacDecSetConfiguration'", __FILE__, __LINE__);
|
||||
}
|
||||
|
||||
- m_faacDecInit = (faacDecInit_t)FuppesGetProcAddress(m_LibHandle, "faacDecInit");
|
||||
+ m_faacDecInit = (faacDecInit_t)FuppesGetProcAddress(m_LibHandle, to_str(faacDecInit));
|
||||
if(!m_faacDecInit) {
|
||||
CSharedLog::Shared()->Log(L_EXT, "cannot load symbol 'faacDecInit'", __FILE__, __LINE__);
|
||||
}
|
||||
|
||||
- m_faacDecInit2 = (faacDecInit2_t)FuppesGetProcAddress(m_LibHandle, "faacDecInit2");
|
||||
+ m_faacDecInit2 = (faacDecInit2_t)FuppesGetProcAddress(m_LibHandle, to_str(faacDecInit2));
|
||||
if(!m_faacDecInit2) {
|
||||
CSharedLog::Shared()->Log(L_EXT, "cannot load symbol 'faacDecInit2'", __FILE__, __LINE__);
|
||||
return false;
|
||||
}
|
||||
|
||||
- m_faacDecDecode = (faacDecDecode_t)FuppesGetProcAddress(m_LibHandle, "faacDecDecode");
|
||||
+ m_faacDecDecode = (faacDecDecode_t)FuppesGetProcAddress(m_LibHandle, to_str(faacDecDecode));
|
||||
if(!m_faacDecDecode) {
|
||||
CSharedLog::Shared()->Log(L_EXT, "cannot load symbol 'faacDecDecode'", __FILE__, __LINE__);
|
||||
return false;
|
||||
}
|
||||
|
||||
- m_faacDecClose = (faacDecClose_t)FuppesGetProcAddress(m_LibHandle, "faacDecClose");
|
||||
+ m_faacDecClose = (faacDecClose_t)FuppesGetProcAddress(m_LibHandle, to_str(faacDecClose));
|
||||
if(!m_faacDecClose) {
|
||||
CSharedLog::Shared()->Log(L_EXT, "cannot load symbol 'faacDecClose'", __FILE__, __LINE__);
|
||||
return false;
|
||||
}
|
||||
|
||||
- m_AudioSpecificConfig = (AudioSpecificConfig_t)FuppesGetProcAddress(m_LibHandle, "AudioSpecificConfig");
|
||||
+ m_AudioSpecificConfig = (AudioSpecificConfig_t)FuppesGetProcAddress(m_LibHandle, to_str(AudioSpecificConfig));
|
||||
if(!m_AudioSpecificConfig) {
|
||||
- m_AudioSpecificConfig = (AudioSpecificConfig_t)FuppesGetProcAddress(m_LibHandle, "faacDecAudioSpecificConfig");
|
||||
+ m_AudioSpecificConfig = (AudioSpecificConfig_t)FuppesGetProcAddress(m_LibHandle, to_str(faacDecAudioSpecificConfig));
|
||||
if(!m_AudioSpecificConfig) {
|
||||
CSharedLog::Shared()->Log(L_EXT, "cannot load symbol '(faacDec)AudioSpecificConfig'", __FILE__, __LINE__);
|
||||
return false;
|
|
@ -1564,8 +1564,6 @@ let
|
|||
|
||||
ftop = callPackage ../os-specific/linux/ftop { };
|
||||
|
||||
fuppes = callPackage ../tools/networking/fuppes { };
|
||||
|
||||
fsfs = callPackage ../tools/filesystems/fsfs { };
|
||||
|
||||
fuseiso = callPackage ../tools/filesystems/fuseiso { };
|
||||
|
|
Loading…
Reference in a new issue