WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: RipperX-gtk1 Bug Feedback  (Read 3430 times)

Offline SamK

  • Hero Member
  • *****
  • Posts: 713
RipperX-gtk1 Bug Feedback
« on: June 09, 2012, 02:31:00 AM »
If the app is installed but not used, it can be uninstalled successfully.  If it is used to rip a track, it cannot be uninstalled.  In the latter case SCMApps reports "Failed".
   

Edit: correct typo.
« Last Edit: June 09, 2012, 02:33:39 AM by SamK »

Offline Jason W

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 9730
Re: RipperX-gtk1 Bug Feedback
« Reply #1 on: June 09, 2012, 12:43:38 PM »
On first guess that would indicate that something is still in use in the mountpoint /apps/ripperx-gtk1.  I believe the scms that need dbus running and launch it from inside the extension with the --exit-with-session flag will also be this way, at least until that dbus session dies after the app is closed.  I will check it out tonight.



Offline Jason W

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 9730
Re: RipperX-gtk1 Bug Feedback
« Reply #2 on: June 09, 2012, 08:19:56 PM »
Yeah, some files are still in use after ripping a cd:

Code: [Select]
tc@box:~$ lsof /apps/ripperx-gtk1/
COMMAND    PID USER  FD   TYPE DEVICE SIZE/OFF NODE NAME
ripperX_p 4296   tc txt    REG   7,62     4012   50 /apps/ripperx-gtk1/local/ripperx-gtk1/bin/ripperX_plugin-cdparanoia
cdplay    4297   tc txt    REG   7,62     8832  150 /apps/ripperx-gtk1/local/bin/cdplay
ripperX_p 4302   tc txt    REG   7,62     3044   45 /apps/ripperx-gtk1/local/ripperx-gtk1/bin/ripperX_plugin-lame
tc@box:~$



I don't think we should use "umount -f" to forcibly unmount and uninstall scms as I don't think it is a good idea for the uninstall function to kill a binary or process that is perhaps actually in use, possibly for an important function.  But if you want to be able to find and kill any open and unneeded processes in an scm mount point to allow it to be uninstalled, the below script should work, it did with ripperx-gtk1.

for I in `lsof -t /apps/ripperx-gtk1`; do sudo kill "$I"; done

Offline SamK

  • Hero Member
  • *****
  • Posts: 713
Re: RipperX-gtk1 Bug Feedback
« Reply #3 on: June 10, 2012, 04:23:18 AM »
I don't think we should use "umount -f" to forcibly unmount and uninstall scms as I don't think it is a good idea for the uninstall function to kill a binary or process that is perhaps actually in use, possibly for an important function.  But if you want to be able to find and kill any open and unneeded processes in an scm mount point to allow it to be uninstalled, the below script should work, it did with ripperx-gtk1.

for I in `lsof -t /apps/ripperx-gtk1`; do sudo kill "$I"; done
An idea - how about making it a user choice to force an uninstall?  Perhaps something along the following lines.


SCMApps-->Apps-->Local-->Uninstall-->ripperx-gtk1-->Go
At this point "Failed" is reported
Might it be possible to append to the message something like:
Quote
Do you wish to try and force ripperx-gtk1 to be uninstalled?
This is not advisable if it is still working or being used by any other application.

To try and force the uninstall, select "Force Uninstall" in the button menu below and then click Go
At this point the "Download Only" button which is currently greyed-out becomes active to allow the selection to be made.

The benefits of this or a similar method are:
* It is in keeping with the scm strategy of enabling full install/uninstall
* In a GUI environment it avoids the necessity to use the command line for what is otherwise a fully GUI driven activity.