Package: idjc Severity: wishlist Hi,
I thought IDJC was dead (there were no new releases for a couple of years), but apparently upstream has been working on converting to Python 3 and GTK+ 3, so it can be included in Debian again, which I'd be interested in, since I use IDJC regularly. Although I'm not a Python packaging expert, I've taken a stab at updating the packaging. I could fork and open a merge request, but that doesn't really work with the upsteam and pristine-tar branches, so I'll attach a patch for now. Some comments: configure.ac requires git, or else it won't define the GIT_VERSION_CONTROL conditional, leading to a make error. ./py-compile needs PYTHON to be set in order to work with python3. I hope that it's correct to pass --no-ext-rename to dh_python3. This package is not going to be Multi-Arch compatible. I also hope that I got the dependencies right. I added a python3-pymysql | python3-mysqldb recommendation (can be used to connect to Prokyon or Ampache database). idjc.appdata.xml.in.in stil needs to be patched to conform to the current standard (Lintian reports an error). -- Magnus Holmgren holmg...@debian.org Debian Developer
diff --git a/debian/changelog b/debian/changelog index 346888f..a83eec2 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,9 +1,15 @@ -idjc (0.8.17-2) UNRELEASED; urgency=medium +idjc (0.9.3-1) UNRELEASED; urgency=low + [ Debian Janitor ] * Wrap long lines in changelog entries: 0.7.5-1. * Set upstream metadata fields: Repository. - -- Debian Janitor <jani...@jelmer.uk> Sat, 01 Feb 2020 23:10:14 +0000 + [ Magnus Holmgren ] + * New upstream version 0.9.3 + * Refresh patches. + * Drop ogg.patch; applied upstream. + + -- Magnus Holmgren <holmg...@debian.org> Sun, 17 Apr 2022 13:43:27 +0200 idjc (0.8.17-1) unstable; urgency=medium diff --git a/debian/control b/debian/control index 1a34fbf..12d23e0 100644 --- a/debian/control +++ b/debian/control @@ -9,10 +9,12 @@ Uploaders: Build-Depends: debhelper-compat (= 11), autopoint, dh-python, + git, + libglib2.0-dev, libavcodec-dev, libavformat-dev, libflac-dev, - libjack-dev, + libjack-jackd2-dev, libmp3lame-dev, libmpg123-dev, libogg-dev (>= 1.3.0), @@ -23,9 +25,8 @@ Build-Depends: debhelper-compat (= 11), libspeex-dev, libswscale-dev, libvorbis-dev, - python-dev (>= 2.7~), - python-gtk2-dev, - python-mutagen + python3-dev (>= 3.7~), + python3-mutagen Standards-Version: 4.1.4 Homepage: http://idjc.sourceforge.net/ Vcs-Git: https://salsa.debian.org/multimedia-team/idjc.git @@ -34,16 +35,20 @@ Vcs-Browser: https://salsa.debian.org/multimedia-team/idjc Package: idjc Architecture: any Depends: + python3-dbus, + python3-gi, + python3-irc, + python3-mutagen, + gir1.2-gtk-3.0, + gir1.2-pango-1.0, + gir1.2-glib-2.0, + gir1.2-gdkpixbuf-2.0, jackd, - python-dbus, - python-gobject, - python-gtk2, - python-irc, - python-mutagen, ${misc:Depends}, - ${python:Depends}, + ${python3:Depends}, ${shlibs:Depends} -Recommends: python-eyed3 +Recommends: python3-eyed3, + python3-pymysql | python3-mysqldb Description: graphical shoutcast/icecast client Internet DJ Console is an Internet radio application for making a live radio show or podcast. Features include two main media players with a crossfader, diff --git a/debian/patches/desktop.patch b/debian/patches/desktop.patch index 5904426..4c5d976 100644 --- a/debian/patches/desktop.patch +++ b/debian/patches/desktop.patch @@ -4,10 +4,10 @@ Last-Update: 2015-11-15 --- a/idjc.desktop.in.in +++ b/idjc.desktop.in.in -@@ -12,15 +12,14 @@ +@@ -12,15 +12,14 @@ GenericName[it]=Client grafico shoutcast GenericName[de]=Grafischer Shoutcast/Icecast Client GenericName[fr]=Client graphique shoutcast/icecast - Icon=${prefix}/share/pixmaps/@PACKAGE_NAME@.png + Icon=${prefix}/share/icons/hicolor/scalable/apps/@PACKAGE_NAME@.svg -MimeType= Name=Internet DJ Console Path= diff --git a/debian/patches/link-ogg.patch b/debian/patches/link-ogg.patch deleted file mode 100644 index 636b258..0000000 --- a/debian/patches/link-ogg.patch +++ /dev/null @@ -1,39 +0,0 @@ -Description: Link libogg into idjc.so - This in turn ensures that the correct dependency on libogg is generated. - . - The patch is the "strictest" way of including this in the upstream build system - because it adds libogg as a required dependency. -Author: James Cowgill <jcowg...@debian.org> -Bug: https://sourceforge.net/p/idjc/bugs/99/ -Bug-Debian: https://bugs.debian.org/900754 ---- -This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ ---- a/c/Makefile.am -+++ b/c/Makefile.am -@@ -32,7 +32,7 @@ idjc_la_CFLAGS = ${GLIB_CFLAGS} ${LIBAVC - \ - ${LIBSPEEX_CFLAGS} ${LIBVORBISENC_CFLAGS} ${LIBVORBIS_CFLAGS} ${TWOLAME_CFLAGS} ${OPUS_CFLAGS} \ - \ -- ${LIBSWRESAMPLE_CFLAGS} -O2 -Wall -std=gnu99 -+ ${LIBSWRESAMPLE_CFLAGS} ${LIBOGG_CFLAGS} -O2 -Wall -std=gnu99 - - idjc_la_LIBADD = ${DYN_LIBS} ${GLIB_LIBS} ${LIBAVCODEC_LIBS} ${LIBAVFORMAT_LIBS} ${LIBAVUTIL_LIBS} ${LIBFLAC_LIBS} \ - \ -@@ -40,6 +40,6 @@ idjc_la_LIBADD = ${DYN_LIBS} ${GLIB_LIBS - \ - ${LIBSNDFILE_LIBS} ${LIBSPEEX_LIBS} ${LIBVORBISENC_LIBS} ${LIBVORBIS_LIBS} ${TWOLAME_LIBS} \ - \ -- ${LIBSWRESAMPLE_LIBS} ${OPUS_LIBS} -lpthread -+ ${LIBSWRESAMPLE_LIBS} ${OPUS_LIBS} ${LIBOGG_LIBS} -lpthread - - idjc_la_LDFLAGS = ${DYN_LDFLAGS} -no-undefined -avoid-version -module ---- a/configure.ac -+++ b/configure.ac -@@ -28,6 +28,7 @@ AM_GNU_GETTEXT_VERSION([0.18.1]) - PKG_CHECK_MODULES(LIBJACK, [jack >= 0.98.0]) - - # Core dependencies. -+PKG_CHECK_MODULES([LIBOGG], [ogg >= 1.3.0]) - PKG_CHECK_MODULES([LIBVORBIS], [vorbis >= 1.0.0]) - PKG_CHECK_MODULES([LIBVORBISENC], [vorbisenc >= 1.0.0]) - PKG_CHECK_MODULES([LIBSAMPLERATE], [samplerate]) diff --git a/debian/patches/reproducible-build.patch b/debian/patches/reproducible-build.patch index 67a8e79..f7ced9e 100644 --- a/debian/patches/reproducible-build.patch +++ b/debian/patches/reproducible-build.patch @@ -2,13 +2,13 @@ Author: Chris Lamb <la...@debian.org> Bug-Debian: https://bugs.debian.org/831630 Last-Update: 2016-07-17 ---- idjc-0.8.16.orig/Makefile.am -+++ idjc-0.8.16/Makefile.am +--- a/Makefile.am ++++ b/Makefile.am @@ -43,7 +43,11 @@ if GIT_VERSION_CONTROL else - rm buildinfo + rm -f $(top_builddir)/buildinfo endif -- echo Build date: $$(date -R) >> buildinfo +- echo Build date: $$(date -R) >> $(top_builddir)/buildinfo + if test -n "$$SOURCE_DATE_EPOCH"; then \ + echo Build date: $$(date --utc --date="@$${SOURCE_DATE_EPOCH}" -R) >> buildinfo; \ + else \ diff --git a/debian/patches/series b/debian/patches/series index e35781f..ca60580 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,4 +1,3 @@ desktop.patch man.patch -link-ogg.patch reproducible-build.patch diff --git a/debian/rules b/debian/rules index 8f5fe18..c49fc17 100755 --- a/debian/rules +++ b/debian/rules @@ -1,7 +1,12 @@ #!/usr/bin/make -f +export PYTHON=/usr/bin/python3 + %: - dh $@ --with python2 + dh $@ --with python3 + +override_dh_python3: + dh_python3 --no-ext-rename override_dh_auto_configure: dh_auto_configure -- --disable-rpath --disable-static --libexecdir=/usr/bin --libdir=/usr/lib
signature.asc
Description: This is a digitally signed message part.