mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-24 07:53:19 +00:00
Merge pull request #7066 from edwtjo/xbmc-pruning
Remove XBMC expressions in favor of the Kodi ones
This commit is contained in:
commit
1092b9da48
@ -107,7 +107,6 @@ in zipModules ([]
|
||||
++ obsolete [ "services" "sshd" "permitRootLogin" ] [ "services" "openssh" "permitRootLogin" ]
|
||||
++ obsolete [ "services" "xserver" "startSSHAgent" ] [ "services" "xserver" "startOpenSSHAgent" ]
|
||||
++ obsolete [ "services" "xserver" "startOpenSSHAgent" ] [ "programs" "ssh" "startAgent" ]
|
||||
++ obsolete [ "services" "xserver" "windowManager" "xbmc" ] [ "services" "xserver" "desktopManager" "xbmc" ]
|
||||
|
||||
# VirtualBox
|
||||
++ obsolete [ "services" "virtualbox" "enable" ] [ "services" "virtualboxGuest" "enable" ]
|
||||
@ -136,6 +135,10 @@ in zipModules ([]
|
||||
|
||||
++ obsolete [ "services" "mysql55" ] [ "services" "mysql" ]
|
||||
|
||||
# XBMC
|
||||
++ obsolete [ "services" "xserver" "windowManager" "xbmc" ] [ "services" "xserver" "desktopManager" "kodi" ]
|
||||
++ obsolete [ "services" "xserver" "desktopManager" "xbmc" ] [ "services" "xserver" "desktopManager" "kodi" ]
|
||||
|
||||
# Options that are obsolete and have no replacement.
|
||||
++ obsolete' [ "boot" "loader" "grub" "bootDevice" ]
|
||||
++ obsolete' [ "boot" "initrd" "luks" "enable" ]
|
||||
|
@ -19,7 +19,7 @@ in
|
||||
# E.g., if KDE is enabled, it supersedes xterm.
|
||||
imports = [
|
||||
./none.nix ./xterm.nix ./xfce.nix ./kde4.nix ./kde5.nix
|
||||
./e19.nix ./gnome3.nix ./xbmc.nix ./kodi.nix
|
||||
./e19.nix ./gnome3.nix ./kodi.nix
|
||||
];
|
||||
|
||||
options = {
|
||||
|
@ -1,31 +0,0 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.xserver.desktopManager.xbmc;
|
||||
in
|
||||
|
||||
{
|
||||
options = {
|
||||
services.xserver.desktopManager.xbmc = {
|
||||
enable = mkOption {
|
||||
default = false;
|
||||
example = true;
|
||||
description = "Enable the xbmc multimedia center.";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
services.xserver.desktopManager.session = [{
|
||||
name = "xbmc";
|
||||
start = ''
|
||||
${pkgs.xbmc}/bin/xbmc --lircdev /var/run/lirc/lircd --standalone &
|
||||
waitPID=$!
|
||||
'';
|
||||
}];
|
||||
|
||||
environment.systemPackages = [ pkgs.xbmc ];
|
||||
};
|
||||
}
|
@ -1,32 +0,0 @@
|
||||
From 9f1e45a10860dd23239de35673643e9e0e4a74f8 Mon Sep 17 00:00:00 2001
|
||||
From: Lars Op den Kamp <lars@opdenkamp.eu>
|
||||
Date: Tue, 28 Oct 2014 14:52:16 +0100
|
||||
Subject: [PATCH 5/8] [CEC] renamed the iDoubleTapTimeoutMs in the new libCEC
|
||||
for clarity. does not change binary compatibility
|
||||
|
||||
---
|
||||
xbmc/peripherals/devices/PeripheralCecAdapter.cpp | 7 ++++++-
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/xbmc/peripherals/devices/PeripheralCecAdapter.cpp b/xbmc/peripherals/devices/PeripheralCecAdapter.cpp
|
||||
index 1d068dc..ad123d9 100644
|
||||
--- a/xbmc/peripherals/devices/PeripheralCecAdapter.cpp
|
||||
+++ b/xbmc/peripherals/devices/PeripheralCecAdapter.cpp
|
||||
@@ -1347,8 +1347,13 @@ void CPeripheralCecAdapter::SetConfigurationFromSettings(void)
|
||||
m_configuration.bPowerOffOnStandby = iStandbyAction == 13011 ? 1 : 0;
|
||||
m_configuration.bShutdownOnStandby = iStandbyAction == 13005 ? 1 : 0;
|
||||
|
||||
+#if defined(CEC_DOUBLE_TAP_TIMEOUT_MS_OLD)
|
||||
// double tap prevention timeout in ms
|
||||
- m_configuration.iDoubleTapTimeoutMs = GetSettingInt("double_tap_timeout_ms");
|
||||
+ m_configuration.iDoubleTapTimeout50Ms = GetSettingInt("double_tap_timeout_ms") / 50;
|
||||
+#else
|
||||
+ // backwards compatibility. will be removed once the next major release of libCEC is out
|
||||
+ m_configuration.iDoubleTapTimeoutMs = GetSettingInt("double_tap_timeout_ms");
|
||||
+#endif
|
||||
}
|
||||
|
||||
void CPeripheralCecAdapter::ReadLogicalAddresses(const CStdString &strString, cec_logical_addresses &addresses)
|
||||
--
|
||||
2.1.2
|
||||
|
@ -1,114 +0,0 @@
|
||||
{ stdenv, lib, fetchurl, makeWrapper
|
||||
, pkgconfig, cmake, gnumake, yasm, pythonFull
|
||||
, boost, avahi, libdvdcss, lame, autoreconfHook
|
||||
, gettext, pcre, yajl, fribidi, which
|
||||
, openssl, gperf, tinyxml2, taglib, libssh, swig, jre
|
||||
, libX11, xproto, inputproto, libxml2
|
||||
, libXt, libXmu, libXext, xextproto
|
||||
, libXinerama, libXrandr, randrproto
|
||||
, libXtst, libXfixes, fixesproto, systemd
|
||||
, SDL, SDL_image, SDL_mixer, alsaLib
|
||||
, mesa, glew, fontconfig, freetype, ftgl
|
||||
, libjpeg, jasper, libpng, libtiff
|
||||
, ffmpeg, libmpeg2, libsamplerate, libmad
|
||||
, libogg, libvorbis, flac, libxslt
|
||||
, lzo, libcdio, libmodplug, libass, libbluray
|
||||
, sqlite, mysql, nasm, gnutls, libva
|
||||
, curl, bzip2, zip, unzip, glxinfo, xdpyinfo
|
||||
, dbus_libs ? null, dbusSupport ? true
|
||||
, udev, udevSupport ? true
|
||||
, libusb ? null, usbSupport ? false
|
||||
, samba ? null, sambaSupport ? true
|
||||
, libmicrohttpd
|
||||
# TODO: would be nice to have nfsSupport (needs libnfs library)
|
||||
, rtmpdump ? null, rtmpSupport ? true
|
||||
, libvdpau ? null, vdpauSupport ? true
|
||||
, pulseaudio ? null, pulseSupport ? true
|
||||
, libcec ? null, cecSupport ? true
|
||||
}:
|
||||
|
||||
assert dbusSupport -> dbus_libs != null;
|
||||
assert udevSupport -> udev != null;
|
||||
assert usbSupport -> libusb != null && ! udevSupport; # libusb won't be used if udev is avaliable
|
||||
assert sambaSupport -> samba != null;
|
||||
assert vdpauSupport -> libvdpau != null && ffmpeg.vdpauSupport;
|
||||
assert pulseSupport -> pulseaudio != null;
|
||||
assert cecSupport -> libcec != null;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "xbmc-13.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/xbmc/xbmc/archive/13.2-Gotham.tar.gz";
|
||||
sha256 = "11g5a3h6kxz1vmnhagfjhg9nqf11wy0wzqqf4h338jh3lgzmvgxc";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
makeWrapper libxml2 gnutls
|
||||
pkgconfig cmake gnumake yasm pythonFull
|
||||
boost libmicrohttpd autoreconfHook
|
||||
gettext pcre yajl fribidi libva
|
||||
openssl gperf tinyxml2 taglib libssh swig jre
|
||||
libX11 xproto inputproto which
|
||||
libXt libXmu libXext xextproto
|
||||
libXinerama libXrandr randrproto
|
||||
libXtst libXfixes fixesproto
|
||||
SDL SDL_image SDL_mixer alsaLib
|
||||
mesa glew fontconfig freetype ftgl
|
||||
libjpeg jasper libpng libtiff
|
||||
ffmpeg libmpeg2 libsamplerate libmad
|
||||
libogg libvorbis flac libxslt systemd
|
||||
lzo libcdio libmodplug libass libbluray
|
||||
sqlite mysql nasm avahi libdvdcss lame
|
||||
curl bzip2 zip unzip glxinfo xdpyinfo
|
||||
]
|
||||
++ lib.optional dbusSupport dbus_libs
|
||||
++ lib.optional udevSupport udev
|
||||
++ lib.optional usbSupport libusb
|
||||
++ lib.optional sambaSupport samba
|
||||
++ lib.optional vdpauSupport libvdpau
|
||||
++ lib.optional pulseSupport pulseaudio
|
||||
++ lib.optional cecSupport libcec
|
||||
++ lib.optional rtmpSupport rtmpdump;
|
||||
|
||||
dontUseCmakeConfigure = true;
|
||||
|
||||
patches = [ ./0005-CEC-renamed-the-iDoubleTapTimeoutMs-in-the-new-libCE.patch ];
|
||||
|
||||
preConfigure = ''
|
||||
substituteInPlace xbmc/linux/LinuxTimezone.cpp \
|
||||
--replace 'usr/share/zoneinfo' 'etc/zoneinfo'
|
||||
./bootstrap
|
||||
'';
|
||||
|
||||
configureFlags = [
|
||||
"--enable-external-libraries"
|
||||
]
|
||||
++ lib.optional (! sambaSupport) "--disable-samba"
|
||||
++ lib.optional vdpauSupport "--enable-vdpau"
|
||||
++ lib.optional pulseSupport "--enable-pulse"
|
||||
++ lib.optional rtmpSupport "--enable-rtmp";
|
||||
|
||||
postInstall = ''
|
||||
for p in $(ls $out/bin/) ; do
|
||||
wrapProgram $out/bin/$p \
|
||||
--prefix PATH ":" "${pythonFull}/bin" \
|
||||
--prefix PATH ":" "${glxinfo}/bin" \
|
||||
--prefix PATH ":" "${xdpyinfo}/bin" \
|
||||
--prefix LD_LIBRARY_PATH ":" "${curl}/lib" \
|
||||
--prefix LD_LIBRARY_PATH ":" "${systemd}/lib" \
|
||||
--prefix LD_LIBRARY_PATH ":" "${libmad}/lib" \
|
||||
--prefix LD_LIBRARY_PATH ":" "${libvdpau}/lib" \
|
||||
--prefix LD_LIBRARY_PATH ":" "${libcec}/lib" \
|
||||
--prefix LD_LIBRARY_PATH ":" "${rtmpdump}/lib"
|
||||
done
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://xbmc.org/;
|
||||
description = "Media center";
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.iElectric maintainers.titanous ];
|
||||
};
|
||||
}
|
@ -1,108 +0,0 @@
|
||||
{ stdenv, fetchFromGitHub, xbmc }:
|
||||
|
||||
let
|
||||
|
||||
pluginDir = "/lib/xbmc/plugin";
|
||||
|
||||
mkXBMCPlugin = { plugin, namespace, version, src, meta, ... }:
|
||||
stdenv.lib.makeOverridable stdenv.mkDerivation rec {
|
||||
inherit src meta;
|
||||
name = "xbmc-plugin-${plugin}-${version}";
|
||||
passthru = {
|
||||
xbmcPlugin = pluginDir;
|
||||
namespace = namespace;
|
||||
};
|
||||
dontStrip = true;
|
||||
installPhase = ''
|
||||
d=$out${pluginDir}/${namespace}
|
||||
mkdir -p $d
|
||||
sauce="."
|
||||
[ -d ${namespace} ] && sauce=${namespace}
|
||||
cp -R $sauce/* $d
|
||||
'';
|
||||
};
|
||||
|
||||
in
|
||||
{
|
||||
|
||||
advanced-launcher = mkXBMCPlugin rec {
|
||||
|
||||
plugin = "advanced-launcher";
|
||||
namespace = "plugin.program.advanced.launcher";
|
||||
version = "2.5.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Angelscry";
|
||||
repo = namespace;
|
||||
rev = "f6f7980dc66d041e1635bb012d79aa8b3a8790ba";
|
||||
sha256 = "0wk41lpd6fw504q5x1h76hc99vw4jg4vq44bh7m21ism85ds0r47";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "http://forum.xbmc.org/showthread.php?tid=85724";
|
||||
description = "A program launcher for XBMC";
|
||||
longDescription = ''
|
||||
Advanced Launcher allows you to start any Linux, Windows and
|
||||
OS X external applications (with command line support or not)
|
||||
directly from the XBMC GUI. Advanced Launcher also give you
|
||||
the possibility to edit, download (from Internet resources)
|
||||
and manage all the meta-data (informations and images) related
|
||||
to these applications.
|
||||
'';
|
||||
platforms = platforms.all;
|
||||
maintainers = with maintainers; [ edwtjo ];
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
genesis = mkXBMCPlugin rec {
|
||||
|
||||
plugin = "genesis";
|
||||
namespace = "plugin.video.genesis";
|
||||
version = "2.1.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "lambda81";
|
||||
repo = "lambda-xbmc-addons";
|
||||
rev = "f8aa34064bf31fffbb3c264af32c66bbdaf0a59e";
|
||||
sha256 = "0d197fd6n3m9knpg38frnmfhqyabvh00ridpmikyw4vzk3hx11km";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "http://forums.tvaddons.ag/forums/148-lambda-s-xbmc-addons";
|
||||
description = "The origins of streaming";
|
||||
platforms = platforms.all;
|
||||
maintainers = with maintainers; [ edwtjo ];
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
svtplay = mkXBMCPlugin rec {
|
||||
|
||||
plugin = "svtplay";
|
||||
namespace = "plugin.video.svtplay";
|
||||
version = "4.0.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nilzen";
|
||||
repo = "xbmc-" + plugin;
|
||||
rev = "29a754e49584d1ca32f0c07b87304669cf266bb0";
|
||||
sha256 = "0k7mwaknw4h1jlq7ialbzgxxpb11j8bk29dx2gimp40lvnyw4yhz";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "http://forum.xbmc.org/showthread.php?tid=67110";
|
||||
description = "Watch content from SVT Play";
|
||||
longDescription = ''
|
||||
With this addon you can stream content from SVT Play
|
||||
(svtplay.se). The plugin fetches the video URL from the SVT
|
||||
Play website and feeds it to the XBMC video player. HLS (m3u8)
|
||||
is the preferred video format by the plugin.
|
||||
'';
|
||||
platforms = platforms.all;
|
||||
maintainers = with maintainers; [ edwtjo ];
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
@ -1,53 +0,0 @@
|
||||
{ stdenv, lib, makeWrapper, xbmc, plugins }:
|
||||
|
||||
let
|
||||
|
||||
p = builtins.parseDrvName xbmc.name;
|
||||
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
|
||||
name = "xbmc-" + p.version;
|
||||
version = p.version;
|
||||
|
||||
buildInputs = [ makeWrapper ];
|
||||
|
||||
buildCommand = ''
|
||||
mkdir -p $out/share/xbmc/addons/packages
|
||||
${stdenv.lib.concatMapStrings
|
||||
(plugin: "ln -s ${plugin.out
|
||||
+ plugin.xbmcPlugin
|
||||
+ "/" + plugin.namespace
|
||||
} $out/share/xbmc/addons/.;") plugins}
|
||||
$(for plugin in ${xbmc}/share/xbmc/addons/*
|
||||
do
|
||||
$(ln -s $plugin/ $out/share/xbmc/addons/.)
|
||||
done)
|
||||
$(for share in ${xbmc}/share/xbmc/*
|
||||
do
|
||||
$(ln -s $share $out/share/xbmc/.)
|
||||
done)
|
||||
$(for passthrough in icons xsessions applications
|
||||
do
|
||||
ln -s ${xbmc}/share/$passthrough $out/share/
|
||||
done)
|
||||
$(for exe in xbmc{,-standalone}
|
||||
do
|
||||
makeWrapper ${xbmc}/bin/$exe $out/bin/$exe \
|
||||
--prefix XBMC_HOME : $out/share/xbmc;
|
||||
done)
|
||||
'';
|
||||
|
||||
preferLocalBuilds = true;
|
||||
|
||||
meta = with xbmc.meta; {
|
||||
inherit license homepage;
|
||||
description = description
|
||||
+ " (with plugins: "
|
||||
+ lib.concatStrings (lib.intersperse ", " (map (x: ""+x.name) plugins))
|
||||
+ ")";
|
||||
|
||||
};
|
||||
|
||||
}
|
@ -1,39 +0,0 @@
|
||||
{ stdenv, pkgs, cores }:
|
||||
|
||||
assert cores != [];
|
||||
|
||||
with pkgs.lib;
|
||||
|
||||
let
|
||||
|
||||
script = exec: ''
|
||||
#!${stdenv.shell}
|
||||
nohup sh -c "sleep 1 && pkill -SIGSTOP xbmc" &
|
||||
nohup sh -c "${exec} '$@' -f;pkill -SIGCONT xbmc"
|
||||
'';
|
||||
scriptSh = exec: pkgs.writeScript ("xbmc-"+exec.name) (script exec.path);
|
||||
execs = map (core: rec { name = core.core; path = core+"/bin/retroarch-"+name;}) cores;
|
||||
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "xbmc-retroarch-advanced-launchers-${version}";
|
||||
version = "0.2";
|
||||
|
||||
dontBuild = true;
|
||||
|
||||
buildCommand = ''
|
||||
mkdir -p $out/bin
|
||||
${stdenv.lib.concatMapStrings (exec: "ln -s ${scriptSh exec} $out/bin/xbmc-${exec.name};") execs}
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "XBMC retroarch advanced launchers";
|
||||
longDescription = ''
|
||||
These retroarch launchers are intended to be used with
|
||||
anglescry advanced launcher for XBMC since device input is
|
||||
caught by both XBMC and the retroarch process.
|
||||
'';
|
||||
license = stdenv.lib.licenses.gpl3;
|
||||
};
|
||||
}
|
@ -10856,7 +10856,7 @@ let
|
||||
ghostscript = if stdenv.isDarwin then null else ghostscript;
|
||||
perl = null; # Currently Broken
|
||||
};
|
||||
|
||||
|
||||
imagemagickBig = imagemagick;
|
||||
|
||||
# Impressive, formerly known as "KeyJNote".
|
||||
@ -12236,16 +12236,6 @@ let
|
||||
cores = retroArchCores;
|
||||
};
|
||||
|
||||
wrapXBMC = { xbmc }: import ../applications/video/xbmc/wrapper.nix {
|
||||
inherit stdenv lib makeWrapper xbmc;
|
||||
plugins = let inherit (lib) optional; in with xbmcPlugins;
|
||||
([]
|
||||
++ optional (config.xbmc.enableAdvancedLauncher or false) advanced-launcher
|
||||
++ optional (config.xbmc.enableGenesis or false) genesis
|
||||
++ optional (config.xbmc.enableSVTPlay or false) svtplay
|
||||
);
|
||||
};
|
||||
|
||||
wrapKodi = { kodi }: import ../applications/video/kodi/wrapper.nix {
|
||||
inherit stdenv lib makeWrapper kodi;
|
||||
plugins = let inherit (lib) optional; in with kodiPlugins;
|
||||
@ -12287,37 +12277,24 @@ let
|
||||
gtk = gtk2;
|
||||
};
|
||||
|
||||
xbmcPlain = callPackage ../applications/video/xbmc {
|
||||
ffmpeg = ffmpeg_1;
|
||||
};
|
||||
|
||||
xbmcPlugins = recurseIntoAttrs (callPackage ../applications/video/xbmc/plugins.nix {
|
||||
xbmc = xbmcPlain;
|
||||
});
|
||||
|
||||
xbmc = wrapXBMC {
|
||||
xbmc = xbmcPlain;
|
||||
};
|
||||
|
||||
kodiPlain = callPackage ../applications/video/kodi { };
|
||||
xbmcPlain = kodiPlain;
|
||||
|
||||
kodiPlugins = recurseIntoAttrs (callPackage ../applications/video/kodi/plugins.nix {
|
||||
kodi = kodiPlain;
|
||||
});
|
||||
xbmcPlugins = kodiPlugins;
|
||||
|
||||
kodi = wrapKodi {
|
||||
kodi = kodiPlain;
|
||||
};
|
||||
|
||||
xbmc-retroarch-advanced-launchers =
|
||||
callPackage ../misc/emulators/retroarch/xbmc-advanced-launchers.nix {
|
||||
cores = retroArchCores;
|
||||
};
|
||||
xbmc = kodi;
|
||||
|
||||
kodi-retroarch-advanced-launchers =
|
||||
callPackage ../misc/emulators/retroarch/kodi-advanced-launchers.nix {
|
||||
cores = retroArchCores;
|
||||
};
|
||||
xbmc-retroarch-advanced-launchers = kodi-retroarch-advanced-launchers;
|
||||
|
||||
xca = callPackage ../applications/misc/xca { };
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user