Managing Software

Here just my small crazy idea about Yast and software management based on newbies (i personally know) complaints:

OpenSuSE Suggestions

I really do believe that removing and upgrading software should be a lot easier… newbies can’t deal with too much technical things.

Just an idea…

I think that a lot of people have difficulties with opensuse because they want to see another ubuntu/mandriva like distro “that even my gramma can use”. However, imo, opensuse is not designed for gramma. It’s a power-user distro with cutting edge features.

So, about the suggestions, I’m not a big fan:
1: similar feature exists, at least in the gnome main-menu (I’m not too sure about kde’s thou).

2: Even if we put the feature in yast, it’s not that great: Opensuse still don’t have a deborphan equivalent. So removing package gimp doesn’t really uninstall gimp: files on which gimp depends but who doesn’t depends on gimp will stay there, even if it is not use by any other applications.
A good example is package compiz-fusion-gnome. It’s only a metapackage, so removing compiz-fusion-gnome will cause no difference. However, following the suggested presentation, compiz-fusion-gnome should at the same level as Openoffice or The gimp.

This feature, if one day is installed, depends on mostly 2 things:
A: add an equivalent of deborphan in zypper
B: revamp the whole repo and dependencies organization.
A is cool, but B…

3: Why shouldn’t newbies learn one day?

This is is why patterns and package managers exist(also 1-clicks), to simplify life :cool:

> opensuse is not designed for gramma.
>
> So…I’m not a big fan:

on the other hand, a couple of years ago i helped a (then) 62 year old
granny migrate from Winders ME to SuSE 10.2 with little fuss and bother
(other than installing, setting up (with her passwords etc) and telling
(and demonstrating) her to use Firefox instead of Internet Exploder; and
Thunderbird instead of Outhouse, and OpenOffice instead of Winders
Orifice)…

of course, i didn’t give her the root password :wink:

dd
she loves it…loves to brag to her tea-time-old-lady-friends [every
time a new virus wipes them out] that she doesn’t even HAVE a virus
checker, and and updates Office (etc) for free!!

I agree with many of the OP points, but if all were included it would result in less control over package libs and deps and so perhaps the best solution is for a ‘basic’ and ‘advanced’ packaging feature. The problem being of course that RPM does not have any such ‘reverse-dep’ removal capability and so the point is almost nonexistent until that is resolved.

Cryovac wrote:
> I agree with many of the OP points, but if all were included it would
> result in less control over package libs and deps and so perhaps the
> best solution is for a ‘basic’ and ‘advanced’ packaging feature. The
> problem being of course that RPM does not have any such ‘reverse-dep’
> removal capability and so the point is almost nonexistent until that is
> resolved.

It’s not designed for that… so… don’t count on that one getting
resolved anytime soon. Would probably require moving away from rpm.
And no… AFAIK, the infamous apt-get-deb isn’t going to solve
this either.

Well…moving wouldn’t break my heart but I also don’t tend to make a fuss over a few libs sitting here or there.

Indeed, my 82-year old mother has openSUSE-10.2 running on her desktop PC. She uses the openSUSE-10.2 boot partition for most of her multimedia (family photos, playing videos off the web, playing videos given to her by family) and for getting images from her digital camera … she also uses it for web/internet surfing, picking up her email from hotmail, playing solitaire … etc …

I confess I don’t understand these comments that “opensuse is not designed for gramma” :confused:… IMHO (based on real life experience) if openSUSE is properly installed for gramma, then gramma will have no problems. :slight_smile:

if openSUSE is properly installed for gramma, then gramma will have no problems.

how would you do that???

Has to the rest of the comments… your Grammy’s are to far advanced to my 30 years old friends!!!

and my comment is also based on real life experience!!!
they are always afraid of removing something they shouldn’t or to let useless trash or their computer :frowning:

> they are always afraid of removing something they shouldn’t or to let
> useless trash or their computer :frowning:

well, when i set up a computer for granny i don’t give her the root
password…therefore she CANNOT trash her computer…

she CAN accidentally delete HER files, and HER videos and etc…but, she
can NOT trash the system…

linux is FAR safer in that way…

its asking unknowing folks to ADMINISTER (administrator = root) their
system when you get into trouble with system trashing…isn’t that the
way winders does it–one password and you can just go in and delete the
kernel…

DenverD

if openSUSE is properly installed for gramma,

Here is my point.

of course, i didn’t give her the root password :wink:

Actually, it’s even possible to set up a LFS system and give it to a grammy.

She will use it, and very propably like it, but is she able to configure stuff herself? I mean, what you guys is trying to explain me is not “linux for gramma”, but “linux for a gramma and her grandson”.

I have to admit that “linux for gramma” is a metaphor. Currently there is a trend among popular linux distros to become the easiest as possible: GUI tools with Windows feeling, wow easy to install/uninstall package manager(CNR), “smart” pop-ups that tell you what to do with your pc, and blablabla. And, the current trend says: “oh if a gramma can use the distro out-of-the-box, then it’s a nice distro.”

Of course, it’s important to have distros like this, but should every distro aim this target? I mean, what is “easy” for beginner does not necessarly mean “useful” for a power-user. For example, yast is overkill for a linux newbie, but a linux user with a good experience, yast if an amazing tool. On the other hand, the “add and remove software” shipped with ubuntu or fedora is very cool for newbie, but I don’t use it since I can’t really know which packages are installed.

Sure, we can do both: provide tools for beginner and advanced users. But a live-cd is 700mb, a dvd is around 5gb: there is some limit. Also, if we really want suse to be newbie friendly, we will have to revamp the whole layout, since “putting yast outside of control center may scare newbies…”.

Hey, what about people who aren’t newbies?

AFAIK, the infamous apt-get-deb isn’t going to solve
this either.

A package manager build upon aptitude may solve it. But I like zypper, it sounds good. :stuck_out_tongue:

My 82-year old mother started out with linux 2 years ago, … she was a WinME user before that. The “trick” was to perfectly match her WinME desktop layout with openSUSE-10.2, … icons in same position, same background. She did not like the “K” menu graphic in lower left, nor the “openSUSE lizard”, so I changed that to a microsoft “start” menu copied from WinME.

All of a sudden, it looked familiar, and she felt more comfortable. Then I went into KDE setup and set the mouse clicks to match the winME look/feel.

My mother was also afraid of that for WinXP, WinME and Linux. No difference there between OS. Absolutely none.

As for root password, she has it, but I told her never to use it. Phone me first and I will walk her through what has to be done.

And she calls me for Linux support (I live with my wife, across the ocean in a different continent) and I connect to my mother’s PC via vnc, take over her Linux desktop, and teach her. And my mother calls my wife just as much, for WinME/winXP support, and my wife connects to her PC via vnc, and takes over her WinME/winXP desktop. Again, no difference.

My mother notes her retired friends are all envious of the support she gets in both Linux and Windows. Her retired friends, all winXP or Vista users, are having a major night mare keeping their PCs running with winXP/Vista. While my mother, possibly because support is only a phone call (and 9 time zones) away, is now comfortable switching from winME to WinXP to Linux, all via the boot partition. The desktops between the 3 OS are starting to diverge a bit, as she is starting to put her own influence on them, … but overall it works well.

apt-get has a feature that removes any unneeded deps, maybe zypper should implement this, but in a better way so people who compile, can ignore this :wink:

If they have developed one-click installs the next step to add a one click uninstall function is not that far away as i see it.

The nice thing with rpm is that you can set it so that when uninstalling it will leave the packages alone that might be used by other (later) installed apps.

It’s all a mater of time and priorities developers have, but I do think the rpm/zypper system is quite capable to make a smart uninstall system possible.
The thing that can make things complex is that installs can be done in many ways varying from building from source/copying to the new one-click setups. When mixing install methods, big chance you will brake parts of the system uninstalling eventually. But this goes for any system I’ve seen so far.

Just my 2cents,
Wj

Actually it would be the job of libzypp :wink:

Breaking comes with different managers, e.g. if you a one-click, then apt-rpm, smart, yum, zypper, yast, then you’ll get something wrong.

But if it’s all part of the same system (libzypp), no problems should occur

apt-get has a feature that removes any unneeded deps

apt-get doesn’t have it. That’s why deborphan and aptitude exist.

The nice thing with rpm is that you can set it so that when uninstalling it will leave the packages alone that might be used by other (later) installed apps.

Just like the other popular system.:stuck_out_tongue:


Currently, opensuse, by default, rely purely on libzypp.
One-click install, AFAIK is just a script for yast installer, yast installer calls zypper and zypper is a CLI front-end for libzypp.

So if we want something like aptitude, then, as some-guy said, we should just implant a similar feature in libzypp. I think it’s pretty doable, since devs can take some inspiration from aptitude, it would a good thing for everybody and it would make yast quite unique, since even if aptitude is cool, there is no gui front-end for aptitude currently.

Still, I’m not convinced for the OP’s proposal.

Why not make it so that users can filter between binaries and libraries? Something like this: (Basic = Binaries only, Advanced = Binaries and Libraries)


|Basic |Advanced |


|Basic|: Search: “gimp”

Results:

+] Gimp - The GNU Image Manipulation Program. (Installed)
+] Gimp Brushes - Extra Brushes for Gimp. (Installed)

Now to uninstall: (When the user clicks on gimp, brushes are auto selected).

[X] Gimp - “Gimp” is set to uninstall.
[X*] Gimp Brushes - “Gimp Brushes” is set to uninstall. No longer required.

[libzypp is now checking if other packages require gimp dependencies. If they do, the program will uninstall but the dependencies won’t. This prompt will appear.]

oops! It seems as though the program(s) you are trying
 to remove has libraries another program needs. Don't worry,
you can choose to stop or uninstall the program(s) only, leaving
the libraries available for use.
(Stop) (Uninstall program(s) only)

The Uninstall button is pressed. Yast2 will now open a prompt which shows the final changes, in this case:

Gimp - Program uninstall only. Libraries kept.
(Abort) (Accept)

The “advanced” version would only differ in the results. The process would be the same. See:


|Advanced|: Search: “gimp”

Results:

+] gimp - The GNU Image Manipulation Program.
+] libgimp - Libraries for Gimp.
+] gimpprint - Printer support for Gimp.
+] gimpbrush - Extra Brush packages for Gimp.

Uninstall:

[X] gimp - The GNU Image Manipulation Program.
+] libgimp - Libraries for Gimp.
+] gimpprint - Printer support for Gimp.
[X*] gimpbrush - Extra Brush packages for Gimp.

Now the user can continue the uninstall as they would only have uninstalled the program and brushes, not the depended libraries. Only the “advanced” tab would contain libraries, not the “basic” tab.

(“Advanced”)
[You get the standard Yast2 dependency conflict and resolution prompt, asking you to resolve the case.]

I also have an (incomplete) Open Office Drawing which details this (I drew it up in 5 minutes, I’ll finish it later):): http://teamcarmine.net/etc/yastprop.odg

It’s sounds easy, but it’s not:

Now to uninstall: (When the user clicks on gimp, brushes are auto selected).

As I said, we will have to implant aptitude like feature in zypper first

oops! It seems as though the program(s) you are trying
to remove has libraries another program needs. Don’t worry,
you can choose to stop or uninstall the program(s) only, leaving
the libraries available for use.
(Stop) (Uninstall program(s) only)

Why should a package manager takes every user like a bad kid who is trying to do some bad actions in a house? I mean, come on, on step further and it’s Vista’s UAC: are you sure that you are sure to be sure?

If you really want to be “newbie friendly” here: remove unneeded related packages by default, like aptitude. If the user wants a more surgical uninstalling(ex: removing X packages and it’s dependencies only), then he can go to “preference” and change a options (like: expert uninstall method). This way, we wont have this an annoying pop-up, which will annoy both beginners and advanced users, and we keep the old behavior somewhere.

Why not make it so that users can filter between binaries and libraries? Something like this: (Basic = Binaries only, Advanced = Binaries and Libraries)

linux kernel, is it a library or a binaries file?
libxine1, should newbie see it, if we take into account that most newbies will need to install libxine1?
It’s not that easy:
1: devs will have to sort every packages into 2 sections (and not only based on libraries and binaries). Opensuse has more than 10 thousands packages, who’s gonna do this?
2: Let’s say someone decide to do this. It’s not that easy to split every into 2 specific sections, since the limit between newbies files and pro files is not clear cut.

And what’s about advanced user? If we continue in this way, an advanced user of opensuse will have to configure the whole system just to see “advanced options”. Ubuntu’s and fedora’s approach is not bad: having a separate installer for newbies, so advanced users are less bothered.

And why should we treat every suse’s newbie as a stupid person? I can’t decide suse’s future and I can’t predict in which kind of experience Novell would really like to deliver with opensuse. But, Imo, the little touch that distinguished suse from the other popular distros around is the fact that suse has a much more professional gene. It’s whole value can only be exploited by someone who have a minimum of experience with linux. By contrast, ubuntu feels like a distro for mom & dad and fedora feels like a hobbyists’ system. Of course, we can work to make tools provided in suse to be more usable and comprehensive, but if one day yast’s /etc/sysconfig edition will have sexy animations and pretty pop-ups to “comfort linux’s newbies”, then suse has lost something special.

IDEA: As part of the metadata provided to zypper, there could be a ‘libs’ file/section that contained packages to be hidden, zypper would then simply not display them in searches :slight_smile: (this way, packman could keep libxine1 as a visible package, and users can simply install it)

I was once a newbie and I was delighted to find that Yast told me there was a problem with what I wanted to do. I decided to do what I could do and wait until I knew how to get over the problems that Yast told me I might encounter.

At least I didn’t waste time trying to download incompatible software and I’ve never had the sort of problems that MS created with IE7 which interfered with existing applications.

For me Yast offers the right balance of treating me as an intelligent human being and giving me enough information to know how far I can go.