whipper icon indicating copy to clipboard operation
whipper copied to clipboard

Allow selecting alternative *paranoia implementations

Open xmixahlx opened this issue 6 years ago • 23 comments

errors with master. i've installed all the cdio packages I can find. Traceback (most recent call last): File "/usr/local/bin/whipper", line 11, in <module> load_entry_point('whipper==0.5.1', 'console_scripts', 'whipper')() File "/usr/local/lib/python2.7/dist-packages/whipper-0.5.1-py2.7.egg/whipper/command/main.py", line 40, in main ret = cmd.do() File "/usr/local/lib/python2.7/dist-packages/whipper-0.5.1-py2.7.egg/whipper/command/basecommand.py", line 124, in do return self.cmd.do() File "/usr/local/lib/python2.7/dist-packages/whipper-0.5.1-py2.7.egg/whipper/command/basecommand.py", line 124, in do return self.cmd.do() File "/usr/local/lib/python2.7/dist-packages/whipper-0.5.1-py2.7.egg/whipper/command/cd.py", line 172, in do cdparanoia.getCdParanoiaVersion() File "/usr/local/lib/python2.7/dist-packages/whipper-0.5.1-py2.7.egg/whipper/program/cdparanoia.py", line 587, in getCdParanoiaVersion return getter.get() File "/usr/local/lib/python2.7/dist-packages/whipper-0.5.1-py2.7.egg/whipper/common/common.py", line 305, in get raise MissingDependencyException(self._dep) whipper.common.common.MissingDependencyException: cd-paranoia

reverting to prior than #213 resolves.

xmixahlx avatar Jan 28 '18 02:01 xmixahlx

This looks to be related to the debian marillat libcdio-paranoia packages: the cd-paranoia executable isn't included or something. Installing the various cdio packages from git resolves...

xmixahlx avatar Jan 28 '18 04:01 xmixahlx

You don't even have to install anything from git: https://packages.debian.org/stretch/libcdio-utils

45054 avatar Jan 28 '18 07:01 45054

This will cause errors for Gentoo users at least, since their binary is not called 'cd-paranoia'. It's either 'cdparanoia' (depending on the symlink) or libcdio-paranoia and cdparanoia-paranoia.

Let's keep this bug report open for the 'allow selecting alternative paranoia implementation' feature request.

MerlijnWajer avatar Jan 28 '18 09:01 MerlijnWajer

libcdio-utils hasn't included cd-paranoia upstream for a while, breaking out libcdio-cdparanoia.

The marillat lbcdio-cdparanoia package doesn't package the binary. I emailed the maintainer for comment.

I am on Debian Sid.

xmixahlx avatar Jan 29 '18 06:01 xmixahlx

libcdio-utils hasn't included cd-paranoia upstream for a while, breaking out libcdio-cdparanoia.

??? (cd-paranoia is definitely included):

https://packages.debian.org/sid/amd64/libcdio-utils/filelist

I think I've misunderstood something... 🤣

JoeLametta avatar Jan 30 '18 08:01 JoeLametta

Sid has libcdio v1.0. Marillat has v2.0 and cd-paranoia is now separated upstream.

Marillat is also purposefully removing the cd-paranoia binary in debian rules. I asked him about this and awaiting his reply.

xmixahlx avatar Jan 30 '18 14:01 xmixahlx

@JoeLametta cd-paranoia binary doesn't include in libcdio-utils v1.0 .deb package:

$ dpkg-deb -c libcdio-utils_1.0.0-2_amd64.deb 
drwxr-xr-x root/root         0 2017-12-06 13:05 ./
drwxr-xr-x root/root         0 2017-12-06 13:05 ./usr/
drwxr-xr-x root/root         0 2017-12-06 13:05 ./usr/bin/
-rwxr-xr-x root/root     23008 2017-12-06 13:05 ./usr/bin/cd-drive
-rwxr-xr-x root/root     43912 2017-12-06 13:05 ./usr/bin/cd-info
-rwxr-xr-x root/root     31248 2017-12-06 13:05 ./usr/bin/cd-read
-rwxr-xr-x root/root     31304 2017-12-06 13:05 ./usr/bin/cdda-player
-rwxr-xr-x root/root     31424 2017-12-06 13:05 ./usr/bin/iso-info
-rwxr-xr-x root/root     27176 2017-12-06 13:05 ./usr/bin/iso-read
-rwxr-xr-x root/root     27128 2017-12-06 13:05 ./usr/bin/mmc-tool
drwxr-xr-x root/root         0 2017-12-06 13:05 ./usr/share/
drwxr-xr-x root/root         0 2017-12-06 13:05 ./usr/share/doc/
drwxr-xr-x root/root         0 2017-12-06 13:05 ./usr/share/doc/libcdio-utils/
-rw-r--r-- root/root      4318 2017-12-06 13:05 ./usr/share/doc/libcdio-utils/changelog.Debian.gz
-rw-r--r-- root/root    134033 2017-11-22 06:50 ./usr/share/doc/libcdio-utils/changelog.gz
-rw-r--r-- root/root      2799 2014-08-22 05:39 ./usr/share/doc/libcdio-utils/copyright
drwxr-xr-x root/root         0 2017-12-06 13:05 ./usr/share/man/
drwxr-xr-x root/root         0 2017-12-06 13:05 ./usr/share/man/man1/
-rw-r--r-- root/root       757 2017-12-06 13:05 ./usr/share/man/man1/cd-drive.1.gz
-rw-r--r-- root/root      1387 2017-12-06 13:05 ./usr/share/man/man1/cd-info.1.gz
-rw-r--r-- root/root      1163 2017-12-06 13:05 ./usr/share/man/man1/cd-read.1.gz
-rw-r--r-- root/root       867 2017-12-06 13:05 ./usr/share/man/man1/cdda-player.1.gz
-rw-r--r-- root/root       993 2017-12-06 13:05 ./usr/share/man/man1/iso-info.1.gz
-rw-r--r-- root/root       890 2017-12-06 13:05 ./usr/share/man/man1/iso-read.1.gz
-rw-r--r-- root/root       992 2017-12-06 13:05 ./usr/share/man/man1/mmc-tool.1.gz

And I didn't find cd-paranoia.* files in libcdio-release-1.0.0.tar.gz as well.

upd: just found.. it's here in separated dmo package https://www.deb-multimedia.org/dists/unstable/main/binary-amd64/package/cd-paranoia.php

spvkgn avatar Feb 06 '18 16:02 spvkgn

Its really odd, that it is listed in here: https://packages.debian.org/sid/amd64/libcdio-utils/filelist but not really contained in the deb package. Very strange or maybe I'm missing something. Honestly, it smells like a packaging error.

45054 avatar Feb 06 '18 19:02 45054

I'm sorry: I only tried to list the package content (the listing is wrong indeed). According to snapshot.debian.org the cd-paranoia binary was included up to the 0.83 releases: starting from 0.92-1 up to the latest version (2.0.0-1) it is always missing. The cd-paranoia binary is missing in Ubuntu too.

It also appears that the libcdio source package in Debian has been orphaned and needs a maintainer: bug 881719 (didn't check in Ubuntu).

There's also a bug report, filed two weeks and a half ago against the Debian package, which describes this exact issue (bug 888053):

libcdio-utils: cd-paranoia is absent from deb package at version 1.0.0-2 (currently in testing/sid)

P.S. cd-paranoia 0.83 is too old to work correctly with whipper.

JoeLametta avatar Feb 09 '18 09:02 JoeLametta

🎆

Yesterday whipper 0.6.0 has been added to the deb-multimedia repository (announcement here). Thanks to Christian Marillat!

JoeLametta avatar Feb 16 '18 15:02 JoeLametta

I uploaded a patch bug 889803 for debian source package libcdio-paranoia which adds creating .deb package with cd-paranoia binary as NMU QA upload, but don't know how to send a request to apply it (bug still has status 'Pending upload'). It would be great if anyone can help with it.

spvkgn avatar Feb 23 '18 15:02 spvkgn

@spvkgn Maybe you could write him an explicit email. It would be great to get this point cleared for the users.

thomas-mc-work avatar Feb 27 '18 13:02 thomas-mc-work

Also, to close the loop on my original comment: Marillat's packages were updated/fixed he just didn't reply...

libcdio-paranoia-dmo (10.2+0.94+2-dmo4) unstable; urgency=medium

  • Add the binary cd-paranoia in a new cd-paranoia package

-- Christian Marillat [email protected] Sun, 04 Feb 2018 08:09:40 +0100

xmixahlx avatar Mar 05 '18 05:03 xmixahlx

As Merlijn predicts above, I'm a Gentoo user with a cd-paranoia problem. Whipper is available to us through an overlay. After adding that overlay/repo, Whipper installs through our normal command and pulls in its dependencies including cd-paranoia. So this is perplexing:

# emerge -vp cdparanoia

These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild   R    ] media-sound/cdparanoia-3.10.2-r6::gentoo  USE="-static-libs" ABI_X86="(64) -32 (-x32)" 0 KiB
Total: 1 package (1 reinstall), Size of downloads: 0 KiB

# exit $ whipper drive analyze whipper: error: missing dependency "cd-paranoia"

Based on what little of this thread I can understand, I added a symlink from cd-paranoia to cdparanoia and now Whipper works.

DamonLane avatar Aug 10 '18 21:08 DamonLane

We're working on getting a gentoo ebuild approved: https://github.com/gentoo/gentoo/pull/9525

This should solve your issue(s), see the patches in the ebuild.

MerlijnWajer avatar Aug 14 '18 10:08 MerlijnWajer

@DamonLane You can now install whipper from gentoo's portage tree: https://packages.gentoo.org/packages/media-sound/whipper

CaseOf avatar Aug 23 '18 10:08 CaseOf

Because of #234 and #302 I think that this one gains higher priority...

JoeLametta avatar Oct 18 '18 13:10 JoeLametta

So to fix this issue, we need to modify the calls to the cd-paranoia binary in cdparanoia.py depending on the platform used, correct?

If whipper is to be a Unix-only application, we could rely on platform.linux_distribution() to get the proper info and therefore the proper binary name (maybe with a simple dict to match the proper binary for a given (distname,version) tuple).

The only needed thing would be a list of what Linux versions need what binary...

I'm currently running Ubuntu 18.04, so I know:

{
    ('Ubuntu', '18.04'): 'cdparanoia'
}

but I'm not sure for other distros.

pieqq avatar Mar 29 '19 14:03 pieqq

@pieqq Depends, it may also be implemented in a more general way (like proposed in #244).

JoeLametta avatar Apr 02 '19 16:04 JoeLametta

I've uploaded whipper 0.7.3 snap package to Ubuntu store https://snapcraft.io/whipper It's in beta channel, not released yet cause I don't have a cd drive on my linux pc for now and can't test rip process. I guess Ubuntu users could test it. Your feedbacks are welcome.

spvkgn avatar Apr 17 '19 13:04 spvkgn

@spvkgn great, thanks!

Do you have a link to the snapcraft.yaml? (just out of curiosity)

Do you know if the snap requires special connect commands for some given plugs/slots?

pieqq avatar Apr 17 '19 14:04 pieqq

@pieqq snapcraft.yaml

This is first snap package I created, maybe there is something missing there.

spvkgn avatar Apr 17 '19 15:04 spvkgn

@spvkgn Thanks for the snap package! When you deem it to be ready, let me know so that I'll mention it in whipper's README. :wink:

JoeLametta avatar May 03 '19 08:05 JoeLametta