mirror of
https://github.com/SebastianWendel/nixpkgs.git
synced 2024-09-24 06:00:18 +02:00
Merge pull request #185165 from thiagokokada/refactor-audacious
audacious: migrate to meson build system, refactor
This commit is contained in:
commit
e2d6fcc5ec
|
@ -0,0 +1,25 @@
|
||||||
|
From b64b03be9edf23a80fce0c76de61ffff0914ddce Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thiago Kenji Okada <thiagokokada@gmail.com>
|
||||||
|
Date: Mon, 8 Aug 2022 10:28:33 +0100
|
||||||
|
Subject: [PATCH] Set plugindir to $PREFIX/lib/audacious
|
||||||
|
|
||||||
|
---
|
||||||
|
meson.build | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/meson.build b/meson.build
|
||||||
|
index 3f7996f72..ab09d6476 100644
|
||||||
|
--- a/meson.build
|
||||||
|
+++ b/meson.build
|
||||||
|
@@ -160,7 +160,7 @@ if (cxx.has_header('libintl.h'))
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
-install_plugindir = audacious_dep.get_variable(pkgconfig: 'plugin_dir')
|
||||||
|
+install_plugindir = join_paths(get_option('prefix'), 'lib/audacious')
|
||||||
|
|
||||||
|
|
||||||
|
conf.set_quoted('INSTALL_PLUGINDIR', install_plugindir)
|
||||||
|
--
|
||||||
|
2.36.0
|
||||||
|
|
|
@ -1,15 +1,16 @@
|
||||||
{
|
{ lib
|
||||||
mkDerivation, lib, fetchurl, fetchpatch,
|
, stdenv
|
||||||
gettext, pkg-config,
|
, audacious-plugins
|
||||||
qtbase,
|
, fetchurl
|
||||||
alsa-lib, curl, faad2, ffmpeg, flac, fluidsynth, gdk-pixbuf, lame, libbs2b,
|
, gettext
|
||||||
libcddb, libcdio, libcdio-paranoia, libcue, libjack2, libmad, libmms, libmodplug,
|
, meson
|
||||||
libmowgli, libnotify, libogg, libpulseaudio, libsamplerate, libsidplayfp,
|
, ninja
|
||||||
libsndfile, libvorbis, libxml2, lirc, mpg123, neon, qtmultimedia, soxr,
|
, pkg-config
|
||||||
wavpack, libopenmpt
|
, qtbase
|
||||||
|
, wrapQtAppsHook
|
||||||
}:
|
}:
|
||||||
|
|
||||||
mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "audacious";
|
pname = "audacious";
|
||||||
version = "4.2";
|
version = "4.2";
|
||||||
|
|
||||||
|
@ -17,54 +18,39 @@ mkDerivation rec {
|
||||||
url = "http://distfiles.audacious-media-player.org/audacious-${version}.tar.bz2";
|
url = "http://distfiles.audacious-media-player.org/audacious-${version}.tar.bz2";
|
||||||
sha256 = "sha256-/rME5HCkgf4rPEyhycs7I+wmJUDBLQ0ebCKl62JeBLM=";
|
sha256 = "sha256-/rME5HCkgf4rPEyhycs7I+wmJUDBLQ0ebCKl62JeBLM=";
|
||||||
};
|
};
|
||||||
pluginsSrc = fetchurl {
|
|
||||||
url = "http://distfiles.audacious-media-player.org/audacious-plugins-${version}.tar.bz2";
|
|
||||||
sha256 = "sha256-b6D2nDoQQeuHfDcQlROrSioKVqd9nowToVgc8UOaQX8=";
|
|
||||||
};
|
|
||||||
|
|
||||||
nativeBuildInputs = [ gettext pkg-config ];
|
nativeBuildInputs = [
|
||||||
|
gettext
|
||||||
buildInputs = [
|
meson
|
||||||
# Core dependencies
|
ninja
|
||||||
qtbase
|
pkg-config
|
||||||
|
wrapQtAppsHook
|
||||||
# Plugin dependencies
|
|
||||||
alsa-lib curl faad2 ffmpeg flac fluidsynth gdk-pixbuf lame libbs2b libcddb
|
|
||||||
libcdio libcdio-paranoia libcue libjack2 libmad libmms libmodplug libmowgli
|
|
||||||
libnotify libogg libpulseaudio libsamplerate libsidplayfp libsndfile
|
|
||||||
libvorbis libxml2 lirc mpg123 neon qtmultimedia soxr wavpack
|
|
||||||
libopenmpt
|
|
||||||
];
|
];
|
||||||
|
|
||||||
configureFlags = [ "--disable-gtk" ];
|
buildInputs = [
|
||||||
|
qtbase
|
||||||
|
];
|
||||||
|
|
||||||
# Here we build both audacious and audacious-plugins in one
|
mesonFlags = [
|
||||||
# derivation, since they really expect to be in the same prefix.
|
"-Dgtk=false"
|
||||||
# This is slighly tricky.
|
"-Dbuildstamp=NixOS"
|
||||||
builder = builtins.toFile "builder.sh" ''
|
];
|
||||||
# First build audacious.
|
|
||||||
(
|
postInstall = lib.optionalString (audacious-plugins != null) ''
|
||||||
source $stdenv/setup
|
ln -s ${audacious-plugins}/lib/audacious $out/lib
|
||||||
genericBuild
|
|
||||||
)
|
|
||||||
# Then build the plugins.
|
|
||||||
(
|
|
||||||
nativeBuildInputs="$out $nativeBuildInputs" # to find audacious
|
|
||||||
source $stdenv/setup
|
|
||||||
rm -rfv audacious-*
|
|
||||||
src=$pluginsSrc
|
|
||||||
genericBuild
|
|
||||||
)
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Audio player";
|
description = "A lightweight and versatile audio player";
|
||||||
homepage = "https://audacious-media-player.org/";
|
homepage = "https://audacious-media-player.org/";
|
||||||
maintainers = with maintainers; [ eelco ramkromberg ttuegel ];
|
maintainers = with maintainers; [ eelco ramkromberg ttuegel thiagokokada ];
|
||||||
platforms = with platforms; linux;
|
platforms = with platforms; linux;
|
||||||
license = with licenses; [
|
license = with licenses; [
|
||||||
bsd2 bsd3 #https://github.com/audacious-media-player/audacious/blob/master/COPYING
|
bsd2
|
||||||
gpl2 gpl3 lgpl2Plus #http://redmine.audacious-media-player.org/issues/46
|
bsd3 #https://github.com/audacious-media-player/audacious/blob/master/COPYING
|
||||||
|
gpl2
|
||||||
|
gpl3
|
||||||
|
lgpl2Plus #http://redmine.audacious-media-player.org/issues/46
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
111
pkgs/applications/audio/audacious/plugins.nix
Normal file
111
pkgs/applications/audio/audacious/plugins.nix
Normal file
|
@ -0,0 +1,111 @@
|
||||||
|
{ stdenv
|
||||||
|
, fetchurl
|
||||||
|
, alsa-lib
|
||||||
|
, audacious
|
||||||
|
, curl
|
||||||
|
, faad2
|
||||||
|
, ffmpeg
|
||||||
|
, flac
|
||||||
|
, fluidsynth
|
||||||
|
, gdk-pixbuf
|
||||||
|
, gettext
|
||||||
|
, lame
|
||||||
|
, libbs2b
|
||||||
|
, libcddb
|
||||||
|
, libcdio
|
||||||
|
, libcdio-paranoia
|
||||||
|
, libcue
|
||||||
|
, libjack2
|
||||||
|
, libmad
|
||||||
|
, libmms
|
||||||
|
, libmodplug
|
||||||
|
, libmowgli
|
||||||
|
, libnotify
|
||||||
|
, libogg
|
||||||
|
, libopenmpt
|
||||||
|
, libpulseaudio
|
||||||
|
, libsamplerate
|
||||||
|
, libsidplayfp
|
||||||
|
, libsndfile
|
||||||
|
, libvorbis
|
||||||
|
, libxml2
|
||||||
|
, lirc
|
||||||
|
, meson
|
||||||
|
, mpg123
|
||||||
|
, neon
|
||||||
|
, ninja
|
||||||
|
, pkg-config
|
||||||
|
, qtbase
|
||||||
|
, qtmultimedia
|
||||||
|
, qtx11extras
|
||||||
|
, soxr
|
||||||
|
, wavpack
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "audacious-plugins";
|
||||||
|
version = "4.2";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "http://distfiles.audacious-media-player.org/audacious-plugins-${version}.tar.bz2";
|
||||||
|
sha256 = "sha256-b6D2nDoQQeuHfDcQlROrSioKVqd9nowToVgc8UOaQX8=";
|
||||||
|
};
|
||||||
|
|
||||||
|
patches = [ ./0001-Set-plugindir-to-PREFIX-lib-audacious.patch ];
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
gettext
|
||||||
|
meson
|
||||||
|
ninja
|
||||||
|
pkg-config
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
audacious
|
||||||
|
alsa-lib
|
||||||
|
curl
|
||||||
|
faad2
|
||||||
|
ffmpeg
|
||||||
|
flac
|
||||||
|
fluidsynth
|
||||||
|
gdk-pixbuf
|
||||||
|
lame
|
||||||
|
libbs2b
|
||||||
|
libcddb
|
||||||
|
libcdio
|
||||||
|
libcdio-paranoia
|
||||||
|
libcue
|
||||||
|
libjack2
|
||||||
|
libmad
|
||||||
|
libmms
|
||||||
|
libmodplug
|
||||||
|
libmowgli
|
||||||
|
libnotify
|
||||||
|
libogg
|
||||||
|
libpulseaudio
|
||||||
|
libsamplerate
|
||||||
|
libsidplayfp
|
||||||
|
libsndfile
|
||||||
|
libvorbis
|
||||||
|
libxml2
|
||||||
|
lirc
|
||||||
|
mpg123
|
||||||
|
neon
|
||||||
|
qtbase
|
||||||
|
qtmultimedia
|
||||||
|
qtx11extras
|
||||||
|
soxr
|
||||||
|
wavpack
|
||||||
|
libopenmpt
|
||||||
|
];
|
||||||
|
|
||||||
|
mesonFlags = [
|
||||||
|
"-Dgtk=false"
|
||||||
|
];
|
||||||
|
|
||||||
|
dontWrapQtApps = true;
|
||||||
|
|
||||||
|
meta = audacious.meta // {
|
||||||
|
description = "Plugins for Audacious music player";
|
||||||
|
};
|
||||||
|
}
|
|
@ -25998,6 +25998,10 @@ with pkgs;
|
||||||
aucatctl = callPackage ../applications/audio/aucatctl { };
|
aucatctl = callPackage ../applications/audio/aucatctl { };
|
||||||
|
|
||||||
audacious = libsForQt5.callPackage ../applications/audio/audacious { };
|
audacious = libsForQt5.callPackage ../applications/audio/audacious { };
|
||||||
|
audacious-plugins = libsForQt5.callPackage ../applications/audio/audacious/plugins.nix {
|
||||||
|
# Avoid circular dependency
|
||||||
|
audacious = audacious.override { audacious-plugins = null; };
|
||||||
|
};
|
||||||
audaciousQt5 = audacious;
|
audaciousQt5 = audacious;
|
||||||
|
|
||||||
audacity-gtk2 = callPackage ../applications/audio/audacity { wxGTK = wxGTK31-gtk2; };
|
audacity-gtk2 = callPackage ../applications/audio/audacity { wxGTK = wxGTK31-gtk2; };
|
||||||
|
|
Loading…
Reference in a new issue