Merge pull request #120802 from AndersonTorres/quick-patches

Convert ffmpeg_3 to ffmpeg
This commit is contained in:
Anderson Torres 2021-04-30 18:50:21 -03:00 committed by GitHub
commit 1e42d905e6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
13 changed files with 343 additions and 196 deletions

View File

@ -6,7 +6,7 @@
, cmake , cmake
, docbook_xml_dtd_45 , docbook_xml_dtd_45
, docbook_xsl , docbook_xsl
, ffmpeg_3 , ffmpeg
, flac , flac
, id3lib , id3lib
, libogg , libogg
@ -31,21 +31,22 @@ stdenv.mkDerivation rec {
version = "3.8.6"; version = "3.8.6";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/project/kid3/kid3/${version}/${pname}-${version}.tar.gz"; url = "https://download.kde.org/stable/${pname}/${version}/${pname}-${version}.tar.xz";
sha256 = "sha256-ce+MWCJzAnN+u+07f0dvn0jnbqiUlS2RbcM9nAj5bgg="; hash = "sha256-R4gAWlCw8RezhYbw1XDo+wdp797IbLoM3wqHwr+ul6k=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
cmake cmake
docbook_xml_dtd_45
docbook_xsl
pkg-config pkg-config
python3
wrapQtAppsHook wrapQtAppsHook
]; ];
buildInputs = [ buildInputs = [
automoc4 automoc4
chromaprint chromaprint
docbook_xml_dtd_45 ffmpeg
docbook_xsl
ffmpeg_3
flac flac
id3lib id3lib
libogg libogg
@ -53,7 +54,6 @@ stdenv.mkDerivation rec {
libxslt libxslt
mp4v2 mp4v2
phonon phonon
python3
qtbase qtbase
qtmultimedia qtmultimedia
qtquickcontrols qtquickcontrols
@ -71,6 +71,7 @@ stdenv.mkDerivation rec {
''; '';
meta = with lib; { meta = with lib; {
homepage = "https://kid3.kde.org/";
description = "A simple and powerful audio tag editor"; description = "A simple and powerful audio tag editor";
longDescription = '' longDescription = ''
If you want to easily tag multiple MP3, Ogg/Vorbis, FLAC, MPC, MP4/AAC, If you want to easily tag multiple MP3, Ogg/Vorbis, FLAC, MPC, MP4/AAC,
@ -101,7 +102,6 @@ stdenv.mkDerivation rec {
- Edit synchronized lyrics and event timing codes, import and export - Edit synchronized lyrics and event timing codes, import and export
LRC files. LRC files.
''; '';
homepage = "http://kid3.sourceforge.net/";
license = licenses.lgpl2Plus; license = licenses.lgpl2Plus;
maintainers = [ maintainers.AndersonTorres ]; maintainers = [ maintainers.AndersonTorres ];
platforms = platforms.linux; platforms = platforms.linux;

View File

@ -1,7 +1,7 @@
{ lib, stdenv, fetchurl, python3, wrapGAppsHook, gettext, libsoup, gnome3, gtk3, gdk-pixbuf, librsvg, { lib, stdenv, fetchurl, python3, wrapGAppsHook, gettext, libsoup, gnome3, gtk3, gdk-pixbuf, librsvg,
tag ? "", xvfb_run, dbus, glibcLocales, glib, glib-networking, gobject-introspection, hicolor-icon-theme, tag ? "", xvfb_run, dbus, glibcLocales, glib, glib-networking, gobject-introspection, hicolor-icon-theme,
gst_all_1, withGstPlugins ? true, gst_all_1, withGstPlugins ? true,
xineBackend ? false, xineLib, xineBackend ? false, xine-lib,
withDbusPython ? false, withPyInotify ? false, withMusicBrainzNgs ? false, withPahoMqtt ? false, withDbusPython ? false, withPyInotify ? false, withMusicBrainzNgs ? false, withPahoMqtt ? false,
webkitgtk ? null, webkitgtk ? null,
keybinder3 ? null, gtksourceview ? null, libmodplug ? null, kakasi ? null, libappindicator-gtk3 ? null }: keybinder3 ? null, gtksourceview ? null, libmodplug ? null, kakasi ? null, libappindicator-gtk3 ? null }:
@ -23,7 +23,7 @@ python3.pkgs.buildPythonApplication rec {
checkInputs = [ gdk-pixbuf hicolor-icon-theme ] ++ (with python3.pkgs; [ pytest pytest_xdist polib xvfb_run dbus.daemon glibcLocales ]); checkInputs = [ gdk-pixbuf hicolor-icon-theme ] ++ (with python3.pkgs; [ pytest pytest_xdist polib xvfb_run dbus.daemon glibcLocales ]);
buildInputs = [ gnome3.adwaita-icon-theme libsoup glib glib-networking gtk3 webkitgtk gdk-pixbuf keybinder3 gtksourceview libmodplug libappindicator-gtk3 kakasi gobject-introspection ] buildInputs = [ gnome3.adwaita-icon-theme libsoup glib glib-networking gtk3 webkitgtk gdk-pixbuf keybinder3 gtksourceview libmodplug libappindicator-gtk3 kakasi gobject-introspection ]
++ (if xineBackend then [ xineLib ] else with gst_all_1; ++ (if xineBackend then [ xine-lib ] else with gst_all_1;
[ gstreamer gst-plugins-base ] ++ optionals withGstPlugins [ gst-plugins-good gst-plugins-ugly gst-plugins-bad ]); [ gstreamer gst-plugins-base ] ++ optionals withGstPlugins [ gst-plugins-good gst-plugins-ugly gst-plugins-bad ]);
propagatedBuildInputs = with python3.pkgs; [ pygobject3 pycairo mutagen gst-python feedparser ] propagatedBuildInputs = with python3.pkgs; [ pygobject3 pycairo mutagen gst-python feedparser ]

View File

@ -1,5 +1,5 @@
{ lib, stdenv, fetchurl, perl, libX11, libXinerama, libjpeg, libpng, libtiff, pkg-config, { lib, stdenv, fetchurl, perl, libX11, libXinerama, libjpeg, libpng, libtiff, pkg-config,
librsvg, glib, gtk2, libXext, libXxf86vm, poppler, xineLib, ghostscript, makeWrapper }: librsvg, glib, gtk2, libXext, libXxf86vm, poppler, xine-lib, ghostscript, makeWrapper }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "eaglemode"; pname = "eaglemode";
@ -12,11 +12,11 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [ pkg-config ];
buildInputs = [ perl libX11 libXinerama libjpeg libpng libtiff buildInputs = [ perl libX11 libXinerama libjpeg libpng libtiff
librsvg glib gtk2 libXxf86vm libXext poppler xineLib ghostscript makeWrapper ]; librsvg glib gtk2 libXxf86vm libXext poppler xine-lib ghostscript makeWrapper ];
# The program tries to dlopen Xxf86vm, Xext and Xinerama, so we use the # The program tries to dlopen Xxf86vm, Xext and Xinerama, so we use the
# trick on NIX_LDFLAGS and dontPatchELF to make it find them. # trick on NIX_LDFLAGS and dontPatchELF to make it find them.
# I use 'yes y' to skip a build error linking with xineLib, # I use 'yes y' to skip a build error linking with xine-lib,
# because xine stopped exporting "_x_vo_new_port" # because xine stopped exporting "_x_vo_new_port"
# https://sourceforge.net/projects/eaglemode/forums/forum/808824/topic/5115261 # https://sourceforge.net/projects/eaglemode/forums/forum/808824/topic/5115261
buildPhase = '' buildPhase = ''

View File

@ -3,22 +3,22 @@
, stdenv , stdenv
, fetchurl , fetchurl
, fetchpatch , fetchpatch
, libX11 , boost
, wxGTK , ffmpeg
, libiconv , ffms
, fftw
, fontconfig , fontconfig
, freetype , freetype
, libGLU
, libGL
, libass
, fftw
, ffms
, ffmpeg_3
, pkg-config
, zlib
, icu , icu
, boost
, intltool , intltool
, libGL
, libGLU
, libX11
, libass
, libiconv
, pkg-config
, wxGTK
, zlib
, spellcheckSupport ? true , spellcheckSupport ? true
, hunspell ? null , hunspell ? null
@ -46,71 +46,75 @@ assert alsaSupport -> (alsaLib != null);
assert pulseaudioSupport -> (libpulseaudio != null); assert pulseaudioSupport -> (libpulseaudio != null);
assert portaudioSupport -> (portaudio != null); assert portaudioSupport -> (portaudio != null);
with lib; let
stdenv.mkDerivation inherit (lib) optional;
rec { in
stdenv.mkDerivation rec {
pname = "aegisub"; pname = "aegisub";
version = "3.2.2"; version = "3.2.2";
src = fetchurl { src = fetchurl {
url = "http://ftp.aegisub.org/pub/releases/${pname}-${version}.tar.xz"; url = "http://ftp.aegisub.org/pub/releases/${pname}-${version}.tar.xz";
sha256 = "11b83qazc8h0iidyj1rprnnjdivj1lpphvpa08y53n42bfa36pn5"; hash = "sha256-xV4zlFuC2FE8AupueC8Ncscmrc03B+lbjAAi9hUeaIU=";
}; };
patches = [ patches = [
# Compatibility with ICU 59 # Compatibility with ICU 59
(fetchpatch { (fetchpatch {
url = "https://github.com/Aegisub/Aegisub/commit/dd67db47cb2203e7a14058e52549721f6ff16a49.patch"; url = "https://github.com/Aegisub/Aegisub/commit/dd67db47cb2203e7a14058e52549721f6ff16a49.patch";
sha256 = "07qqlckiyy64lz8zk1as0vflk9kqnjb340420lp9f0xj93ncssj7"; sha256 = "sha256-R2rN7EiyA5cuBYIAMpa0eKZJ3QZahfnRp8R4HyejGB8=";
}) })
# Compatbility with Boost 1.69 # Compatbility with Boost 1.69
(fetchpatch { (fetchpatch {
url = "https://github.com/Aegisub/Aegisub/commit/c3c446a8d6abc5127c9432387f50c5ad50012561.patch"; url = "https://github.com/Aegisub/Aegisub/commit/c3c446a8d6abc5127c9432387f50c5ad50012561.patch";
sha256 = "1n8wmjka480j43b1pr30i665z8hdy6n3wdiz1ls81wyv7ai5yygf"; sha256 = "sha256-7nlfojrb84A0DT82PqzxDaJfjIlg5BvWIBIgoqasHNk=";
}) })
# Compatbility with make 4.3 # Compatbility with make 4.3
(fetchpatch { (fetchpatch {
url = "https://github.com/Aegisub/Aegisub/commit/6bd3f4c26b8fc1f76a8b797fcee11e7611d59a39.patch"; url = "https://github.com/Aegisub/Aegisub/commit/6bd3f4c26b8fc1f76a8b797fcee11e7611d59a39.patch";
sha256 = "1s9cc5rikrqb9ivjbag4b8yxcyjsmmmw744394d5xq8xi4k12vxc"; sha256 = "sha256-rG8RJokd4V4aSYOQw2utWnrWPVrkqSV3TAvnGXNhLOk=";
}) })
]; ];
nativeBuildInputs = [ nativeBuildInputs = [
pkg-config
intltool intltool
pkg-config
]; ];
buildInputs = [
buildInputs = with lib; [ boost
libX11 ffmpeg
wxGTK ffms
fftw
fontconfig fontconfig
freetype freetype
libGLU
libGL
libass
fftw
ffms
ffmpeg_3
zlib
icu icu
boost libGL
libGLU
libX11
libass
libiconv libiconv
wxGTK
zlib
] ]
++ optional spellcheckSupport hunspell ++ optional alsaSupport alsaLib
++ optional automationSupport lua ++ optional automationSupport lua
++ optional openalSupport openal ++ optional openalSupport openal
++ optional alsaSupport alsaLib
++ optional pulseaudioSupport libpulseaudio
++ optional portaudioSupport portaudio ++ optional portaudioSupport portaudio
++ optional pulseaudioSupport libpulseaudio
++ optional spellcheckSupport hunspell
; ;
enableParallelBuilding = true; enableParallelBuilding = true;
hardeningDisable = [ "bindnow" "relro" ]; hardeningDisable = [
"bindnow"
"relro"
];
# compat with icu61+ https://github.com/unicode-org/icu/blob/release-64-2/icu4c/readme.html#L554 # compat with icu61+
# https://github.com/unicode-org/icu/blob/release-64-2/icu4c/readme.html#L554
CXXFLAGS = [ "-DU_USING_ICU_NAMESPACE=1" ]; CXXFLAGS = [ "-DU_USING_ICU_NAMESPACE=1" ];
# this is fixed upstream though not yet in an officially released version, # this is fixed upstream though not yet in an officially released version,
@ -119,7 +123,8 @@ stdenv.mkDerivation
postInstall = "ln -s $out/bin/aegisub-* $out/bin/aegisub"; postInstall = "ln -s $out/bin/aegisub-* $out/bin/aegisub";
meta = { meta = with lib; {
homepage = "https://github.com/Aegisub/Aegisub";
description = "An advanced subtitle editor"; description = "An advanced subtitle editor";
longDescription = '' longDescription = ''
Aegisub is a free, cross-platform open source tool for creating and Aegisub is a free, cross-platform open source tool for creating and
@ -127,12 +132,11 @@ stdenv.mkDerivation
audio, and features many powerful tools for styling them, including a audio, and features many powerful tools for styling them, including a
built-in real-time video preview. built-in real-time video preview.
''; '';
homepage = "http://www.aegisub.org/"; # The Aegisub sources are itself BSD/ISC, but they are linked against GPL'd
# The Aegisub sources are itself BSD/ISC, # softwares - so the resulting program will be GPL
# but they are linked against GPL'd softwares
# - so the resulting program will be GPL
license = licenses.bsd3; license = licenses.bsd3;
maintainers = [ maintainers.AndersonTorres ]; maintainers = [ maintainers.AndersonTorres ];
platforms = [ "i686-linux" "x86_64-linux" ]; platforms = [ "i686-linux" "x86_64-linux" ];
}; };
} }
# TODO [ AndersonTorres ]: update to fork release

View File

@ -1,51 +1,74 @@
{ lib, stdenv, fetchurl, pkg-config { lib
, flex, bison, gettext , stdenv
, xineUI, wxSVG , fetchurl
, bison
, cdrtools
, docbook5
, dvdauthor
, dvdplusrwtools
, flex
, fontconfig , fontconfig
, xmlto, docbook5, zip , gettext
, cdrtools, dvdauthor, dvdplusrwtools , makeWrapper
, pkg-config
, wxSVG
, xine-ui
, xmlto
, zip
, dvdisasterSupport ? true, dvdisaster ? null , dvdisasterSupport ? true, dvdisaster ? null
, thumbnailSupport ? true, libgnomeui ? null , thumbnailSupport ? true, libgnomeui ? null
, udevSupport ? true, udev ? null , udevSupport ? true, udev ? null
, dbusSupport ? true, dbus ? null , dbusSupport ? true, dbus ? null
, makeWrapper }: }:
with lib;
stdenv.mkDerivation rec {
let
inherit (lib) optionals makeBinPath;
in stdenv.mkDerivation rec {
pname = "dvdstyler"; pname = "dvdstyler";
srcName = "DVDStyler-${version}";
version = "3.1.2"; version = "3.1.2";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/project/dvdstyler/dvdstyler/${version}/${srcName}.tar.bz2"; url = "mirror://sourceforge/project/dvdstyler/dvdstyler/${version}/DVDStyler-${version}.tar.bz2";
sha256 = "03lsblqficcadlzkbyk8agh5rqcfz6y6dqvy9y866wqng3163zq4"; sha256 = "03lsblqficcadlzkbyk8agh5rqcfz6y6dqvy9y866wqng3163zq4";
}; };
nativeBuildInputs = nativeBuildInputs = [
[ pkg-config ]; pkg-config
];
packagesToBinPath = buildInputs = [
[ cdrtools dvdauthor dvdplusrwtools ]; bison
cdrtools
buildInputs = docbook5
[ flex bison gettext xineUI dvdauthor
wxSVG fontconfig xmlto dvdplusrwtools
docbook5 zip makeWrapper ] flex
++ packagesToBinPath fontconfig
gettext
makeWrapper
wxSVG
xine-ui
xmlto
zip
]
++ optionals dvdisasterSupport [ dvdisaster ] ++ optionals dvdisasterSupport [ dvdisaster ]
++ optionals udevSupport [ udev ] ++ optionals udevSupport [ udev ]
++ optionals dbusSupport [ dbus ] ++ optionals dbusSupport [ dbus ]
++ optionals thumbnailSupport [ libgnomeui ]; ++ optionals thumbnailSupport [ libgnomeui ];
binPath = makeBinPath packagesToBinPath;
postInstall = '' postInstall = let
wrapProgram $out/bin/dvdstyler \ binPath = makeBinPath [
--prefix PATH ":" "${binPath}" cdrtools
dvdauthor
dvdplusrwtools
]; in
''
wrapProgram $out/bin/dvdstyler --prefix PATH ":" "${binPath}"
''; '';
meta = with lib; { meta = with lib; {
homepage = "https://www.dvdstyler.org/";
description = "A DVD authoring software"; description = "A DVD authoring software";
longDescription = '' longDescription = ''
DVDStyler is a cross-platform free DVD authoring application for the DVDStyler is a cross-platform free DVD authoring application for the
@ -55,6 +78,7 @@ stdenv.mkDerivation rec {
Software and is completely free. Software and is completely free.
Some of its features include: Some of its features include:
- create and burn DVD video with interactive menus - create and burn DVD video with interactive menus
- design your own DVD menu or select one from the list of ready to use menu - design your own DVD menu or select one from the list of ready to use menu
templates templates
@ -77,8 +101,7 @@ stdenv.mkDerivation rec {
- copy any menu object or whole menu - copy any menu object or whole menu
- customize navigation using DVD scripting - customize navigation using DVD scripting
''; '';
homepage = "http://www.dvdstyler.org/"; license = licenses.gpl2Plus;
license = with licenses; gpl2;
maintainers = with maintainers; [ AndersonTorres ]; maintainers = with maintainers; [ AndersonTorres ];
platforms = with platforms; linux; platforms = with platforms; linux;
}; };

View File

@ -1,6 +1,6 @@
{ stdenv, fetchurl, lib, vdr { stdenv, fetchurl, lib, vdr
, libav, libcap, libvdpau , libav, libcap, libvdpau
, xineLib, libjpeg, libextractor, libglvnd, libGLU , xine-lib, libjpeg, libextractor, libglvnd, libGLU
, libX11, libXext, libXrender, libXrandr , libX11, libXext, libXrender, libXrandr
, makeWrapper , makeWrapper
}: let }: let
@ -34,7 +34,7 @@
postFixup = '' postFixup = ''
for f in $out/bin/*; do for f in $out/bin/*; do
wrapProgram $f \ wrapProgram $f \
--prefix XINE_PLUGIN_PATH ":" "${makeXinePluginPath [ "$out" xineLib ]}" --prefix XINE_PLUGIN_PATH ":" "${makeXinePluginPath [ "$out" xine-lib ]}"
done done
''; '';
@ -53,10 +53,10 @@
libXrender libXrender
libX11 libX11
vdr vdr
xineLib xine-lib
]; ];
passthru.requiredXinePlugins = [ xineLib self ]; passthru.requiredXinePlugins = [ xine-lib self ];
meta = with lib;{ meta = with lib;{
homepage = "https://sourceforge.net/projects/xineliboutput/"; homepage = "https://sourceforge.net/projects/xineliboutput/";

View File

@ -1,34 +1,63 @@
{lib, stdenv, fetchurl, pkg-config, xorg, libpng, xineLib, readline, ncurses, curl { lib
, lirc, shared-mime-info, libjpeg }: , stdenv
, fetchurl
, curl
, libjpeg
, libpng
, lirc
, ncurses
, pkg-config
, readline
, shared-mime-info
, xine-lib
, xorg
}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "xine-ui-0.99.12"; pname = "xine-ui";
version = "0.99.12";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/xine/${name}.tar.xz"; url = "mirror://sourceforge/xine/${pname}-${version}.tar.xz";
sha256 = "10zmmss3hm8gjjyra20qhdc0lb1m6sym2nb2w62bmfk8isfw9gsl"; sha256 = "10zmmss3hm8gjjyra20qhdc0lb1m6sym2nb2w62bmfk8isfw9gsl";
}; };
nativeBuildInputs = [ pkg-config shared-mime-info ]; nativeBuildInputs = [
pkg-config
buildInputs = shared-mime-info
[ xineLib libpng readline ncurses curl lirc libjpeg
xorg.xlibsWrapper xorg.libXext xorg.libXv xorg.libXxf86vm xorg.libXtst xorg.xorgproto
xorg.libXinerama xorg.libXi xorg.libXft
]; ];
buildInputs = [
curl
libjpeg
libpng
lirc
ncurses
readline
xine-lib
] ++ (with xorg; [
libXext
libXft
libXi
libXinerama
libXtst
libXv
libXxf86vm
xlibsWrapper
xorgproto
]);
patchPhase = ''sed -e '/curl\/types\.h/d' -i src/xitk/download.c''; postPatch = "sed -e '/curl\/types\.h/d' -i src/xitk/download.c";
configureFlags = [ "--with-readline=${readline.dev}" ]; configureFlags = [ "--with-readline=${readline.dev}" ];
LIRC_CFLAGS="-I${lirc}/include"; LIRC_CFLAGS="-I${lirc}/include";
LIRC_LIBS="-L ${lirc}/lib -llirc_client"; LIRC_LIBS="-L ${lirc}/lib -llirc_client";
#NIX_LDFLAGS = "-lXext -lgcc_s";
meta = with lib; { meta = with lib; {
homepage = "http://www.xine-project.org/"; homepage = "http://xinehq.de/";
description = "Xlib-based interface to Xine, a video player"; description = "Xlib-based frontend for Xine video player";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ AndersonTorres ];
platforms = platforms.linux; platforms = platforms.linux;
license = licenses.gpl2;
}; };
} }

View File

@ -1,34 +1,43 @@
{ lib, stdenv, fetchurl { lib
, pkg-config, wxGTK , stdenv
, ffmpeg_3, libexif , fetchurl
, cairo, pango }: , cairo
, ffmpeg
, libexif
, pango
, pkg-config
, wxGTK
}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "wxSVG"; pname = "wxSVG";
srcName = "wxsvg-${version}";
version = "1.5.22"; version = "1.5.22";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/project/wxsvg/wxsvg/${version}/${srcName}.tar.bz2"; url = "mirror://sourceforge/project/wxsvg/wxsvg/${version}/wxsvg-${version}.tar.bz2";
sha256 = "0agmmwg0zlsw1idygvqjpj1nk41akzlbdha0hsdk1k8ckz6niq8d"; hash = "sha256-DeFozZ8MzTCbhkDBtuifKpBpg7wS7+dbDFzTDx6v9Sk=";
}; };
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [
pkg-config
propagatedBuildInputs = [ wxGTK ffmpeg_3 libexif ]; ];
buildInputs = [
buildInputs = [ cairo pango ]; cairo
ffmpeg
libexif
pango
wxGTK
];
meta = with lib; { meta = with lib; {
homepage = "http://wxsvg.sourceforge.net/";
description = "A SVG manipulation library built with wxWidgets"; description = "A SVG manipulation library built with wxWidgets";
longDescription = '' longDescription = ''
wxSVG is C++ library to create, manipulate and render wxSVG is C++ library to create, manipulate and render Scalable Vector
Scalable Vector Graphics (SVG) files with the wxWidgets toolkit. Graphics (SVG) files with the wxWidgets toolkit.
''; '';
homepage = "http://wxsvg.sourceforge.net/"; license = with licenses; gpl2Plus;
license = with licenses; gpl2;
maintainers = with maintainers; [ AndersonTorres ]; maintainers = with maintainers; [ AndersonTorres ];
platforms = with platforms; linux; platforms = wxGTK.meta.platforms;
}; };
} }

View File

@ -1,7 +1,27 @@
{ lib, stdenv, fetchurl, pkg-config, xorg, alsaLib, libGLU, libGL, aalib { lib
, libvorbis, libtheora, speex, zlib, perl, ffmpeg_3 , stdenv
, flac, libcaca, libpulseaudio, libmng, libcdio, libv4l, vcdimager , fetchurl
, libmpcdec, ncurses , fetchpatch
, aalib
, alsaLib
, ffmpeg
, flac
, libGL
, libGLU
, libcaca
, libcdio
, libmng
, libmpcdec
, libpulseaudio
, libtheora
, libv4l
, libvorbis
, perl
, pkg-config
, speex
, vcdimager
, xorg
, zlib
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -10,27 +30,58 @@ stdenv.mkDerivation rec {
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/xine/xine-lib-${version}.tar.xz"; url = "mirror://sourceforge/xine/xine-lib-${version}.tar.xz";
sha256 = "01bhq27g5zbgy6y36hl7lajz1nngf68vs4fplxgh98fx20fv4lgg"; sha256 = "sha256-71GyHRDdoQRfp9cRvZFxz9rwpaKHQjO88W/98o7AcAU=";
}; };
nativeBuildInputs = [ pkg-config perl ]; nativeBuildInputs = [
pkg-config
perl
];
buildInputs = [ buildInputs = [
xorg.libX11 xorg.libXv xorg.libXinerama xorg.libxcb xorg.libXext aalib
alsaLib libGLU libGL aalib libvorbis libtheora speex perl ffmpeg_3 flac alsaLib
libcaca libpulseaudio libmng libcdio libv4l vcdimager libmpcdec ncurses ffmpeg
flac
libGL
libGLU
libcaca
libcdio
libmng
libmpcdec
libpulseaudio
libtheora
libv4l
libvorbis
perl
speex
vcdimager
zlib
] ++ (with xorg; [
libX11
libXext
libXinerama
libXv
libxcb
]);
patches = [
# splitting path plugin
(fetchpatch {
name = "0001-fix-XINE_PLUGIN_PATH-splitting.patch";
url = "https://sourceforge.net/p/xine/mailman/attachment/32394053-5e27-6558-f0c9-49e0da0bc3cc%40gmx.de/1/";
sha256 = "sha256-LJedxrD8JWITDo9pnS9BCmy7wiPTyJyoQ1puX49tOls=";
})
]; ];
NIX_LDFLAGS = "-lxcb-shm"; NIX_LDFLAGS = "-lxcb-shm";
propagatedBuildInputs = [zlib];
enableParallelBuilding = true; enableParallelBuilding = true;
meta = with lib; { meta = with lib; {
homepage = "http://xine.sourceforge.net/home"; homepage = "http://www.xinehq.de/";
description = "A high-performance, portable and reusable multimedia playback engine"; description = "A high-performance, portable and reusable multimedia playback engine";
platforms = platforms.linux;
license = with licenses; [ gpl2Plus lgpl2Plus ]; license = with licenses; [ gpl2Plus lgpl2Plus ];
maintainers = with maintainers; [ AndersonTorres ];
platforms = platforms.linux;
}; };
} }

View File

@ -1,6 +1,22 @@
{ lib, stdenv, fetchFromGitHub, makeDesktopItem, wrapQtAppsHook, pkg-config { lib
, cmake, epoxy, libzip, libelf, libedit, ffmpeg_3, SDL2, imagemagick , stdenv
, qtbase, qtmultimedia, qttools, minizip }: , fetchFromGitHub
, SDL2
, cmake
, epoxy
, ffmpeg
, imagemagick
, libedit
, libelf
, libzip
, makeDesktopItem
, minizip
, pkg-config
, qtbase
, qtmultimedia
, qttools
, wrapQtAppsHook
}:
let let
desktopItem = makeDesktopItem { desktopItem = makeDesktopItem {
@ -21,14 +37,26 @@ in stdenv.mkDerivation rec {
owner = "mgba-emu"; owner = "mgba-emu";
repo = "mgba"; repo = "mgba";
rev = version; rev = version;
sha256 = "sha256-JVauGyHJVfiXVG4Z+Ydh1lRypy5rk9SKeTbeHFNFYJs="; hash = "sha256-JVauGyHJVfiXVG4Z+Ydh1lRypy5rk9SKeTbeHFNFYJs=";
}; };
nativeBuildInputs = [ wrapQtAppsHook pkg-config cmake ]; nativeBuildInputs = [
cmake
pkg-config
wrapQtAppsHook
];
buildInputs = [ buildInputs = [
epoxy libzip libelf libedit ffmpeg_3 SDL2 imagemagick SDL2
qtbase qtmultimedia qttools minizip epoxy
ffmpeg
imagemagick
libedit
libelf
libzip
minizip
qtbase
qtmultimedia
qttools
]; ];
postInstall = '' postInstall = ''
@ -38,21 +66,19 @@ in stdenv.mkDerivation rec {
meta = with lib; { meta = with lib; {
homepage = "https://mgba.io"; homepage = "https://mgba.io";
description = "A modern GBA emulator with a focus on accuracy"; description = "A modern GBA emulator with a focus on accuracy";
longDescription = '' longDescription = ''
mGBA is a new Game Boy Advance emulator written in C. mGBA is a new Game Boy Advance emulator written in C.
The project started in April 2013 with the goal of being fast The project started in April 2013 with the goal of being fast enough to
enough to run on lower end hardware than other emulators run on lower end hardware than other emulators support, without
support, without sacrificing accuracy or portability. Even in sacrificing accuracy or portability. Even in the initial version, games
the initial version, games generally play without problems. It generally play without problems. It is loosely based on the previous
is loosely based on the previous GBA.js emulator, although very GBA.js emulator, although very little of GBA.js can still be seen in mGBA.
little of GBA.js can still be seen in mGBA.
Other goals include accurate enough emulation to provide a Other goals include accurate enough emulation to provide a development
development environment for homebrew software, a good workflow environment for homebrew software, a good workflow for tool-assist
for tool-assist runners, and a modern feature set for emulators runners, and a modern feature set for emulators that older emulators may
that older emulators may not support. not support.
''; '';
license = licenses.mpl20; license = licenses.mpl20;
@ -60,3 +86,4 @@ in stdenv.mkDerivation rec {
platforms = platforms.linux; platforms = platforms.linux;
}; };
} }
# TODO [ AndersonTorres ]: use desktopItem functions

View File

@ -1,11 +1,11 @@
{ SDL2 { mkDerivation
, cmake
, fetchFromGitHub , fetchFromGitHub
, ffmpeg_3 , SDL2
, cmake
, ffmpeg
, glew , glew
, lib , lib
, libzip , libzip
, mkDerivation
, pkg-config , pkg-config
, python3 , python3
, qtbase , qtbase
@ -23,7 +23,7 @@ mkDerivation rec {
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
fetchSubmodules = true; fetchSubmodules = true;
sha256 = "19948jzqpclf8zfzp3k7s580xfjgqcyfwlcp7x7xj8h8lyypzymx"; sha256 = "sha256-vfp/vacIItlPP5dR7jzDT7oOUNFnjvvdR46yi79EJKU=";
}; };
postPatch = '' postPatch = ''
@ -35,7 +35,7 @@ mkDerivation rec {
buildInputs = [ buildInputs = [
SDL2 SDL2
ffmpeg_3 ffmpeg
glew glew
libzip libzip
qtbase qtbase
@ -45,23 +45,25 @@ mkDerivation rec {
]; ];
cmakeFlags = [ cmakeFlags = [
"-DHEADLESS=OFF"
"-DOpenGL_GL_PREFERENCE=GLVND" "-DOpenGL_GL_PREFERENCE=GLVND"
"-DUSE_SYSTEM_FFMPEG=ON" "-DUSE_SYSTEM_FFMPEG=ON"
"-DUSE_SYSTEM_LIBZIP=ON" "-DUSE_SYSTEM_LIBZIP=ON"
"-DUSE_SYSTEM_SNAPPY=ON" "-DUSE_SYSTEM_SNAPPY=ON"
"-DUSING_QT_UI=ON" "-DUSING_QT_UI=ON"
"-DHEADLESS=OFF"
]; ];
installPhase = '' installPhase = ''
runHook preInstall
mkdir -p $out/share/ppsspp mkdir -p $out/share/ppsspp
install -Dm555 PPSSPPQt $out/bin/ppsspp install -Dm555 PPSSPPQt $out/bin/ppsspp
mv assets $out/share/ppsspp mv assets $out/share/ppsspp
runHook postInstall
''; '';
meta = with lib; { meta = with lib; {
description = "A HLE Playstation Portable emulator, written in C++";
homepage = "https://www.ppsspp.org/"; homepage = "https://www.ppsspp.org/";
description = "A HLE Playstation Portable emulator, written in C++";
license = licenses.gpl2Plus; license = licenses.gpl2Plus;
maintainers = with maintainers; [ AndersonTorres ]; maintainers = with maintainers; [ AndersonTorres ];
platforms = platforms.linux; platforms = platforms.linux;

View File

@ -849,6 +849,8 @@ mapAliases ({
xbmcPlain = kodiPlain; # added 2018-04-25 xbmcPlain = kodiPlain; # added 2018-04-25
xbmcPlugins = kodiPackages; # added 2018-04-25 xbmcPlugins = kodiPackages; # added 2018-04-25
kodiPlugins = kodiPackages; # added 2021-03-09; kodiPlugins = kodiPackages; # added 2021-03-09;
xineLib = xine-lib; # added 2021-04-27
xineUI = xine-ui; # added 2021-04-27
xmonad_log_applet_gnome3 = xmonad_log_applet; # added 2018-05-01 xmonad_log_applet_gnome3 = xmonad_log_applet; # added 2018-05-01
xmpppy = throw "xmpppy has been removed from nixpkgs as it is unmaintained and python2-only"; xmpppy = throw "xmpppy has been removed from nixpkgs as it is unmaintained and python2-only";
pyIRCt = throw "pyIRCt has been removed from nixpkgs as it is unmaintained and python2-only"; pyIRCt = throw "pyIRCt has been removed from nixpkgs as it is unmaintained and python2-only";

View File

@ -18074,7 +18074,7 @@ in
xed = callPackage ../development/libraries/xed { }; xed = callPackage ../development/libraries/xed { };
xineLib = callPackage ../development/libraries/xine-lib { }; xine-lib = callPackage ../development/libraries/xine-lib { };
xautolock = callPackage ../misc/screensavers/xautolock { }; xautolock = callPackage ../misc/screensavers/xautolock { };
@ -27138,7 +27138,7 @@ in
xfractint = callPackage ../applications/graphics/xfractint {}; xfractint = callPackage ../applications/graphics/xfractint {};
xineUI = callPackage ../applications/video/xine-ui { }; xine-ui = callPackage ../applications/video/xine-ui { };
xlsxgrep = callPackage ../applications/search/xlsxgrep { }; xlsxgrep = callPackage ../applications/search/xlsxgrep { };