Install .deb by dragging it into "Applications" folder

Registered by Otto Robba

This blueprint has been superseded. See the newer blueprint "Discourage installing .deb files from outside the repos" for updated plans.

My proposal is for elementary to have, along with the custom directory structure proposed on another blueprint (https://blueprints.launchpad.net/elementaryos/+spec/logical-filesystem-organisation) a system that, upon dragging a .deb into the /Applications folder, installs it (à lá OSX).

Missing libraries should be automatically downloaded or the user should be prompted "This requires to install 20mbs of extra files. Continue installation?". Not sure.
No hassle, extremely easy, drag and drop.

The user could be prompted for sudo - I'm not sure what would be best.

Anyway, opening this for discussion.

Blueprint information

Status:
Complete
Approver:
None
Priority:
Undefined
Drafter:
None
Direction:
Needs approval
Assignee:
None
Definition:
Superseded
Series goal:
None
Implementation:
Unknown
Milestone target:
None
Completed by
Sergey "Shnatsel" Davidoff

Related branches

Sprints

Whiteboard

This conflicts with https://blueprints.launchpad.net/elementaryos/+spec/no-talks-to-strangers which is already approved, so I'm rejecting this blueprint.
---

Supposing an existing application within the repositories, what if the system checks the .deb md5sum against the one from the app in the repository? This way, if someone downloads a .deb, they don't have to re-download it just because the system says so. While the best way should be the software center, not all applications are available - Opera and Picasa come to mind. GDebi is not the most elegant solution, honestly.

How about we meet at the middleroad? Have Gdebi on a standard install but have a setting to "watch .debs put into /Applications" off by default. So if you turn it on, dragging Opera's .deb there installs it. This way, only users that do want that feature will have it while those not as advanced will just pick from the AppCenter.
--ottorobba

I'd prefer to integrate it into AppCenter anyway. We can make packages that download the real package and put those in a PPA (unfortunately we can't redistribute non-free stuff like Opera). + I personally dislike Opera because it's everything but DE-integrated, and its feature bloat is proverbial; Shotwell does everything Picasa does; there are Google Earth alternatives as well.
If you feel this case needs more attention, you can request an official decision and design strategy from the Council. --shnatsel

I too would prefer something integrated into the AppCenter - but the point here is the essence of open source and elementary, and that is choice and ease-of-use, respectively.

Some people will want Picasa because their phones work with it or they already have a large, organized library and don't want to change. Maybe a few will want Opera alongside other browsers because they are web developers. Maybe people just plain like those or other .deb installable softwares. Point is, if we limit things like .deb installation, the average user will be at a loss, wondering why he can't install the application he downloaded - I know that is how I felt when I first moved to Linux back in July. "Why won't Opera install?" And I didn't understand at first.

I'm not sure how many would bother to keep digging. Not many, if the people I know are any indication. Wouldn't that reflect on their perception of the system? "On Windows/OSX it worked fine...". I think that wanting to safeguard the end-user is a great principle - and one that I think the AppCenter does nicely, by providing secure software. But as it is being proposed, it seems a bit on the heavy-handed side.

I really appreciate the time you take to discuss this Shnatsel, that is one thing I love about open source - how one can talk directly to developers. If possible, yes, I believe this is something that might warrant being looked into by the council.

I myself am relying, as of late, solely on ppas but I really don't want anyone to pass off on Luna because I think it will be great. In short: give the user no excuse to go to any other system.
--ottorobba

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.