one click install doesn't work

One click install doesn’t work. I am using openSuSE 13.2 with Firefox 37.0.2 for openSuSE 13.2.
I use OCICLI to install downloads.

Any help would be appreciate.

what doesn’t work, we need some more info
1 click downloads a text file that contains info about rpm files and repositories needed for install, personaly I prefer using zypper/yast for installing but in the few times I did try 1 click it always worked.

Do you mean the install process doesn’t initiate?

Need more info on what does not work??

This is something I’ve experienced for a long time. I know when I try left clicking on a One-click Install button, the result is a new browser (both firefox and chrome behave this way (both are latest from official openSUSE and Google repositories)) page with the content of the install button, which one either goes back a page and right click on the button and save it, or, simply save the page as is. I believe it is a misconfiguration in the browser’s settings, but I’ve been too lazy to actually do anything about it. The current solution of saving the file isn’t a biggie. But, this info might prompt someone to point their efforts in that direction. Never know, it might be the right direction.

I’d guess your FF isn’t installed isn’t really coming from your OSS.
One Click install shouldn’t invoke a new browser window, it should invoke the Software Install app.
I’ve never looked at this but my wild guess would be that you’d need a MIME type configuration to get proper behavior.

To verify where your package came from the following the following will display info about Chromium and Firefox

zypper info chromium && zypper info MozillaFirefox

If they really do say “Vendor: openSUSE” then probably the simplest way to probably fix a damaged or altered install is a force re-install

zypper in -f *packagename *

TSU

I have had some issues as well.

Firefox used to work, I believe (can’t remember), but it does not after I installed ‘kparts’.
Konqueror works if I choose KHTML, webkit loads the script and displays the code:

<metapackage xmlns:os="http://opensuse.org/Standards/One_Click_Install" xmlns="http://opensuse.org/Standards/One_Click_Install">
  <group>
    <repositories>
      <repository recommended="true">
        <name>openSUSE:13.2</name>
        <summary>Test setup for 13.2</summary>
        <description>This is really just a snapshot of Factory, but we need it to adapt the tools to later test and accept requests to it.</description>
        <url>http://download.opensuse.org/distribution/13.2/repo/oss/</url>
      </repository>
    </repositories>
    <software>
      <item>
        <name>lmms</name>
        <summary>Linux MultiMedia Studio</summary>
        <description>LMMS is a free cross-platform music studio which allows you to produce music
with your computer. This includes the creation of melodies and beats, the
synthesis and mixing of sounds, and arranging of samples.</description>
      </item>
    </software>
  </group>
</metapackage>


Well, it is from my OSS, and it is Chrome not chromium. As well, I didn’t say it opened up another window, but a new page (containing the button’s code). Also, the MIME type is in fact what I alluding to, which you seem to overlook as well. LOL

zypper info google-chrome-stable && zypper info MozillaFirefoxLoading repository data...
Reading installed packages...




Information for package google-chrome-stable:
---------------------------------------------
Repository: google-chrome
Name: google-chrome-stable
Version: 42.0.2311.152-1
Arch: x86_64
Vendor: Google Inc.
Installed: Yes
Status: up-to-date
Installed Size: 175.7 MiB
Summary: Google Chrome
Description: 
  The web browser from Google
  
  Google Chrome is a browser that combines a minimal design with sophisticated technology to make the web faster, safer, and easier.
Loading repository data...
Reading installed packages...




Information for package MozillaFirefox:
---------------------------------------
Repository: openSUSE-13.2-Update
Name: MozillaFirefox
Version: 37.0.2-27.1
Arch: x86_64
Vendor: openSUSE
Installed: Yes
Status: up-to-date
Installed Size: 89.2 MiB
Summary: Mozilla Firefox Web Browser
Description: 
  Mozilla Firefox is a standalone web browser, designed for standards
  compliance and performance.  Its functionality can be enhanced via a
  plethora of extensions.

Well, it should work with Firefox, it does here with 37.0.2 from OSS. Is the “openSUSE Firefox extensions” addon activated?

But it’s a known problem with Chrome/Chromium and WebKit-based browsers.

You should be able to right-click and open the file with “YaST 1-click installer” (the executable is /usr/sbin/OneClickInstallUI).

On 2015-05-19 17:46, kerijan2003 wrote:

> Well, it is from my OSS, and it is Chrome not chromium.

Chrome does not support one-click.

Anyway, I doubt that you got Chrome from oss: it comes directly from
Google. The oneclick thing is an opensuse addition, so external software
doesn’t work.


Cheers / Saludos,

Carlos E. R.

(from 13.1 x86_64 “Bottle” (Minas Tirith))

As Carlos sez and also per your Chrome “zypper info” post, Chrome does not come from OSS (You’re getting your Chrome from Google) so there is little reason to expect that it would understand what a YAST/Zypper mime type is. Chrome is a proprietary app so is not distributed by others (like openSUSE).

So, recommend simply copy/paste the URL into either Chromium or FF (from OSS, not from elsewhere) and IMO your “1-click install” should work as expected.

TSU

Well, if it would respect/use the system’s MIME database, it should actually understand that it should open .ymp files with YaST 1-click install.
The package yast2-metapackage-handler installs a .desktop file to /usr/share/applications/ that specifies that it handles .ymp files.

So, recommend simply copy/paste the URL into either Chromium or FF (from OSS, not from elsewhere) and IMO your “1-click install” should work as expected.

AFAIK it doesn’t work with Chromium either. Both Chrome and Chromium were originally based on WebKit, and this is a general issue there (it mistakes .ymp for .xml I think).

PS: actually it seems to have been fixed in openSUSE’s chromium package some time ago: Access Denied
But the problem itself might even be a server “bug”, see also 893901 – Software 1-click install's Content-Type: is text/x-suse-ymp, but should be application/octet-stream. So some browser (eg. Google Chrome) can not download .ymp files. .

Because of all this discussion, I decided to look at this more closely.

First, Chromium from the OSS supports “1 click install” just fine.
Tested on 13.2, Using
Chromium
Version 42.0.2311.135 (64-bit)

Then, I downloaded and installed new, a fresh Google Chrome and verified it doesn’t support “1 click install” for the reason I described in my earlier post (the link is treated as a plain text MIME type and displays the HTML source).
I then went about looking at whether it’d be possible to simply install/configure a .ymp MIME type and then I found that recently Google removed the component that provided this functionality called the “Redirector.”

So, restoring this missing module has been the focus for regaining access to configuring Google Chrome MIME type configuration. There are links to old installable Redirector modules from old versions of Chrome and an open sourced version. There also seems to be an installable extension which should work but I decided not to test and verify it solves the issue but is likely the easiest way to make this work (for those interested)
https://chrome.google.com/webstore/detail/modify-content-type/jnfofbopfpaoeojgieggflbpcblhfhka?hl=en-US

TSU

What I mean is the file downloads, but one click install does not install the program. I can use a terminal as root, type OCICLI /tmp/program.ymp and install the program.

I think you have to describe more closely the whole process in detail.
What do you do?:slight_smile:

On 2015-05-20 06:36, reguspatoff wrote:
>
> I_A;2710512 Wrote:
>> what doesn’t work, we need some more info
>> 1 click downloads a text file that contains info about rpm files and
>> repositories needed for install, personaly I prefer using zypper/yast
>> for installing but in the few times I did try 1 click it always worked.
>
> What I mean is the file downloads, but one click install does not
> install the program. I can use a terminal as root, type OCICLI
> /tmp/program.ymp and install the program.

Read the other answers, this doesn’t change a thing.


Cheers / Saludos,

Carlos E. R.
(from 13.1 x86_64 “Bottle” at Telcontar)

Maybe there is some kind of mis-understanding…

Typical web browser design
always comes preconfigured to support a number of different files based on the file extension.
If an unknown file extension is encountered, then either a default is applied (likely treating it as a text file) or an error is thrown.
But, all <supported> file types are explicitly described with a MIME type mapping, essentially saying whether to view as a text file, use the browser rendering engine to render it as a web page, or send it off to a designated app which might be an internal module (like a script engine) or to an external app (User installed module or completely separate full application on the system).
Note that every web browser does this MIME type mapping internally within itself and is not a functionality shared between web browsers or the web browser and the system.

**Given the above, **
I’d expect any web browser distributed by openSUSE to contain special settings like MIME types related to openSUSE package management. This is why FF and Chromium support “1 click install” because those apps are typically installed from openSUSE repos. If someone installed those apps from some other source, I wouldn’t expect “1 click install” to work.
If the web browser is installed from someone other than openSUSE (like Google) then I would expect only common, generic mappings to be configured and nothing special to a unique operating system like openSUSE.

The “1 click install” function is unique to openSUSE package management, the package management system it’s based on (YAST which is a superset of functionality built on top of YUM) is not going to be found in any other distro (AFAIK) so can’t be expected to be a default mapping found in any non-openSUSE browser distribution.

TSU

Well, while the things you write are not necessarily incorrect, this is not the complete story.

First, as I wrote already, the package yast-metadata-handler installs a .desktop file that tells the system with what to open .ymp files.
So, if you click on a .ymp file in your file manager, it should offer you to install it with YaST.

Second, a web-server does specify the mimetype of a file it serves to the client (= web browser). The client does not necessarily just take the file ending into account (although it could if it wanted to).

And apparently according to the 2nd bug report I mentioned in my previous post, software.opensuse.org specifies XML as mimetype for those .ymp files (which isn’t completely wrong because .ymp files are actually XML), so some browsers just open it as text.

Again, openSUSE’s Chromium package contains a patch for that, but Chrome obviously does not.

(YAST which is a superset of functionality built on top of YUM) i

First time I hear that.
YUM is/was Fedora’s package manager and actually developed by Yellow-Dog Linux, no?

And YaST should be based on that? :\

Btw, Fedora switched to DNF now, which actually is based on (open)SUSE’s libsolv…

What you state here may be largely agreed, but how does that change the basic issue that closed, proprietary code from a non-openSUSE source cannot be expected to support a setting that is openSUSE-specific?
Fundamentally, it all starts with the browser because if it does not have the proper internal app setting it cannot properly handle or direct handling of an unknown file elsewhere (essentially rendering any system level functionality inaccessible).

Is pretty simple,
You can run zypper and YAST against any YUM repos, but you cannot be guaranteed to do the reverse (at least in my practice). If something has changed to support Fedora using openSUSE repos, I hadn’t heard about that. This is not to say that I regularly pull packages from Fedora or RHEL into my openSUSE (I’m sure that would wreak architectural havoc), I only pull selected packages.
So, this is an observation based on mathematical sets/subsets description and not based on specific code.
Yes, this based purely on my practical usage and not based on anything I’ve read.

TSU

freedesktop.org’s desktop file and MIME specifications are not at all openSUSE-specific.

Again, yast-metapackage-handler installs a .desktop file to the corresponding system directories, that specifies that .ymp files should be opened with YaST.
All applications (proprietary or not) that support freedesktop standards or use the system facilities should respect that.

Fundamentally, it all starts with the browser because if it does not have the proper internal app setting it cannot properly handle or direct handling of an unknown file elsewhere (essentially rendering any system level functionality inaccessible).

Again, apparently the web server tells the browser that this is an XML (text) file.

And as XML is a widely used (text) file format, some browsers display it (as text) directly in the browser window instead of offering the user to download it or open it with an external application.
That’s the fundamental problem here I believe.

Is pretty simple,
You can run zypper and YAST against any YUM repos, but you cannot be guaranteed to do the reverse (at least in my practice).

Yes, because libzypp supports YUM’s repo format.

But that doesn’t mean that YaST or zypper are based on YUM. That’s completely independent, other than both are package management tools.

Maybe you wanted to say “YaST which is a superset of functionality built on top of RPM” instead?
That would be more correct.

If something has changed to support Fedora using openSUSE repos, I hadn’t heard about that.

Me neither. And I didn’t write that this would be the case.
But DNF uses (open)SUSE’s dependency solver (libsolv) to resolve package dependencies. So it is built upon (open)SUSE tools in a way, not the other way round.

And YaST is just another frontend to libzypp anyway.