Merge pull request #6913 from bdimcheff/add-packages-brasero-soundjuicer

Add packages brasero and soundjuicer
This commit is contained in:
lethalman 2015-03-30 17:31:09 +02:00
commit f2bb0bf964
4 changed files with 141 additions and 0 deletions

View file

@ -0,0 +1,50 @@
{ stdenv, fetchurl, pkgconfig, gtk3, intltool, itstool, libxml2, brasero
, libcanberra_gtk3, gnome3, gst_all_1, libmusicbrainz5, libdiscid, isocodes
, makeWrapper }:
let
major = "3.15";
minor = "92";
GST_PLUGIN_PATH = stdenv.lib.makeSearchPath "lib/gstreamer-1.0" [
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good
gst_all_1.gst-plugins-bad
gst_all_1.gst-libav ];
in stdenv.mkDerivation rec {
version = "${major}.${minor}";
name = "sound-juicer-${version}";
src = fetchurl {
url = "http://download.gnome.org/sources/sound-juicer/${major}/${name}.tar.xz";
sha256 = "b1420f267a4c553f6ca242d3b6082b60682c3d7b431ac3c979bd1ccfbf2687dd";
};
buildInputs = [ pkgconfig gtk3 intltool itstool libxml2 brasero libcanberra_gtk3
gnome3.gsettings_desktop_schemas libmusicbrainz5 libdiscid isocodes
makeWrapper gnome3.dconf
gst_all_1.gstreamer gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good gst_all_1.gst-plugins-bad ];
preFixup = ''
for f in $out/bin/* $out/libexec/*; do
wrapProgram "$f" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" \
--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0" \
--prefix GIO_EXTRA_MODULES : "${gnome3.dconf}/lib/gio/modules" \
--prefix GST_PLUGIN_PATH : "${GST_PLUGIN_PATH}"
done
'';
postInstall = ''
rm $out/share/icons/hicolor/icon-theme.cache
'';
meta = with stdenv.lib; {
description = "A Gnome CD Ripper";
homepage = https://wiki.gnome.org/Apps/SoundJuicer;
maintainers = [ maintainers.bdimcheff ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,58 @@
{ stdenv, fetchurl, pkgconfig, gtk3, itstool, gst_all_1, libxml2, libnotify
, libcanberra_gtk3, intltool, gnome3, makeWrapper, dvdauthor, cdrdao
, dvdplusrwtools, cdrtools, libdvdcss }:
let
major = "3.12";
minor = "0";
GST_PLUGIN_PATH = stdenv.lib.makeSearchPath "lib/gstreamer-1.0" [
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good
gst_all_1.gst-plugins-bad
gst_all_1.gst-libav ];
in stdenv.mkDerivation rec {
version = "${major}.${minor}";
name = "brasero-${version}";
src = fetchurl {
url = "http://download.gnome.org/sources/brasero/${major}/${name}.tar.xz";
sha256 = "68fef2699b772fa262d855dac682100dbfea05563a7e4056eff8fe6447aec2fc";
};
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard dvdauthor
cdrdao dvdplusrwtools cdrtools ];
buildInputs = [ pkgconfig gtk3 itstool libxml2 libnotify libcanberra_gtk3
intltool gnome3.gsettings_desktop_schemas makeWrapper libdvdcss
gst_all_1.gstreamer gst_all_1.gst-plugins-base gnome3.dconf
gst_all_1.gst-plugins-good gst_all_1.gst-plugins-bad ];
# brasero checks that the applications it uses aren't symlinks, but this
# will obviously not work on nix
patches = [ ./remove-symlink-check.patch ];
configureFlags = [
"--with-girdir=$out/share/gir-1.0"
"--with-typelibdir=$out/lib/girepository-1.0" ];
preFixup = ''
for f in $out/bin/* $out/libexec/*; do
wrapProgram "$f" \
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" \
--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0" \
--prefix GST_PLUGIN_PATH : "${GST_PLUGIN_PATH}" \
--prefix GIO_EXTRA_MODULES : "${gnome3.dconf}/lib/gio/modules" \
--prefix LD_LIBRARY_PATH : ${libdvdcss}/lib
done
rm $out/share/icons/hicolor/icon-theme.cache
'';
meta = with stdenv.lib; {
description = "A Gnome CD/DVD Burner";
homepage = https://wiki.gnome.org/Apps/Brasero;
maintainers = [ maintainers.bdimcheff ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,29 @@
diff --git a/libbrasero-burn/burn-plugin.c b/libbrasero-burn/burn-plugin.c
index f97bc5f..88e9d35 100644
--- a/libbrasero-burn/burn-plugin.c
+++ b/libbrasero-burn/burn-plugin.c
@@ -221,21 +221,10 @@ brasero_plugin_test_app (BraseroPlugin *plugin,
return;
}
- /* make sure that's not a symlink pointing to something with another
- * name like wodim.
- * NOTE: we used to test the target and see if it had the same name as
- * the symlink with GIO. The problem is, when the symlink pointed to
- * another symlink, then GIO didn't follow that other symlink. And in
- * the end it didn't work. So forbid all symlink. */
- if (g_file_test (prog_path, G_FILE_TEST_IS_SYMLINK)) {
- brasero_plugin_add_error (plugin,
- BRASERO_PLUGIN_ERROR_SYMBOLIC_LINK_APP,
- name);
- g_free (prog_path);
- return;
- }
+ /* disable symlink check on nixos */
+
/* Make sure it's a regular file */
- else if (!g_file_test (prog_path, G_FILE_TEST_IS_REGULAR)) {
+ if (!g_file_test (prog_path, G_FILE_TEST_IS_REGULAR)) {
brasero_plugin_add_error (plugin,
BRASERO_PLUGIN_ERROR_MISSING_APP,
name);

View file

@ -687,6 +687,8 @@ let
boxfs = callPackage ../tools/filesystems/boxfs { };
brasero = callPackage ../tools/cd-dvd/brasero { };
bro = callPackage ../applications/networking/ids/bro { };
bsod = callPackage ../misc/emulators/bsod { };
@ -11664,6 +11666,8 @@ let
sooperlooper = callPackage ../applications/audio/sooperlooper { };
sound-juicer = callPackage ../applications/audio/sound-juicer { };
spideroak = callPackage ../applications/networking/spideroak { };
ssvnc = callPackage ../applications/networking/remote/ssvnc { };