tags 353551 + patch pending
thanks
diff -urN jack-3.1.1+cvs20050801~/jack_checkopts.py
jack-3.1.1+cvs20050801/jack_checkopts.py
--- jack-3.1.1+cvs20050801~/jack_checkopts.py 2006-02-20 23:40:15.000000000
+0000
+++ jack-3.1.1+cvs20050801/jack_checkopts.py 2006-02-21 00:12:12.000000000
+0000
@@ -247,3 +247,42 @@
else:
error("No valid ripper found on your system.")
+ # If the default CD device doesn't exist, see whether we can find another
one
+ if 'cd_device' not in all_keys and not
os.path.exists(cf["cd_device"]["val"]):
+ default = cf["cd_device"]["val"]
+ devices = []
+ # All CD devices can be found in /proc on Linux
+ cdrom_info = "/proc/sys/dev/cdrom/info"
+ if os.path.exists(cdrom_info):
+ try:
+ info = open(cdrom_info, "r")
+ except (IOError, OSError):
+ pass
+ else:
+ for line in info.readlines():
+ if line.startswith("drive name:"):
+ devices = ["/dev/" + x for x in
line.rstrip().split("\t")[2:]]
+ break
+ info.close()
+ message = "Default CD device %s does not exist" % default
+ if not devices:
+ error("%s." % message)
+ elif len(devices) == 1:
+ warning("%s, using %s." % (message, devices[0]))
+ else:
+ warning("%s but there are several CD devices." % message)
+ for i in range(len(devices)):
+ print "%2d" % (i+1) + ".) " + devices[i]
+ input = 0
+ while input <= 0 or input > len(devices):
+ try:
+ input = raw_input("Please choose: ")
+ except KeyboardInterrupt:
+ sys.exit(0)
+ if input.isdigit():
+ input = int(input)
+ else:
+ input = 0
+ devices[0] = devices[input-1]
+ cf.rupdate({'cd_device': {'val': devices[0]}}, "check")
+
--
Martin Michlmayr
http://www.cyrius.com/
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]