Storeman Installer

Rating: 
5
Your rating: None Average: 5 (8 votes)

Storeman Installer

The Storeman Installer for SailfishOS performs the initial installation of the Storeman OpenRepos client application.  Storeman Installer selects, downloads and installs the correct variant of the Storeman application built for the CPU-architecture of the device and the installed SailfishOS release from the SailfishOS-OBS.

Background

Starting with version 0.2.9, Storeman is built by the help of the SailfishOS-OBS and initially installed by the Storeman Installer (or manually).  To update from Storeman < 0.2.9 (requires SailfishOS ≥ 3.1.0), one should reinstall Storeman via the Storeman Installer.  After an initial installation of Storeman ≥ 0.3.0, further updates of Storeman will be performed within Storeman, as usual.

The Storeman Installer works on any SailfishOS release ≥ 3.1.0 and all supported CPU-architectures (armv7hl, i486 and aarch64).  The current Storeman Installer RPM can be obtained from its "latest release" page at GitHub, OpenRepos.net and the SailfishOS-OBS.

On SailfishOS < 3.1.0 use the legacy releases of Storeman, which are also available in this OpenRepos repository "olf".

Important notes

  • If you experience issues with Storeman Installer, please take a look at its log file /var/log/harbour-storeman-installer.log.txt (requires Storeman Installer ≥ 1.3.8).  If that does not reveal to you what is going wrong, please check first if an issue report describing this issue is already filed at GitHub, then you might file a new issue report there and attach the log file to it, or enhance an extant bug report; alternatively (but this is really a much worse choice) and usually with much longer response times from me and no real issue tracking due to the lack of any integration, you can describe your issue in a comment at OpenRepos with a link to your log file copied to a data-sharing service like Pastebin etc.
  • If you experience issues when installing, removing or updating packages after a SailfishOS upgrade, try running devel-su pkcon refresh in a terminal app.
  • Before software can be build for a SailfishOS release at the SailfishOS-OBS, Jolla must create a corresponding "download on demand (DoD)" OBS-repository.  It might take some time after a new "general availability (GA)" SailfishOS release is published before the corresponding "DoD" repository is being made available, during which installing or updating Storeman by the Storeman Installer or Storeman's self-updating on a device with the new SailfishOS release already installed will not succeed, because Storeman cannot be compiled for this new SailfishOS release by the Sailfish-OBS, yet; consequently this is always the case during the "closed beta (cBeta)" and "early access (EA)" phases of a new SailfishOS release.  Hence one has to manually download and install, or update Storeman built for the last prior SailfishOS GA release via pkcon install-local <downloaded RPM file> (e.g., from its releases section at GitHub or the SailfishOS-OBS) then, and hope that there is no change in the new SailfishOS release, which breaks Storeman; if there is, please report that soon at Storeman's issue tracker.
  • Disclaimer: Storeman and Storeman Installer may still have flaws, kill your kittens or break your SailfishOS installation!  Although this is very unlikely after years of testing by many users, new flaws may be introduced in any release (as for any software).  Be aware, that the license you implicitly accept by using Storeman excludes any liability.

Installation instructions

  • Initial installation without having Storeman or SailfishOS:Chum already installed
    1. Enable "System → Security → Untrusted software → Allow untrusted software" in the SailfishOS Settings app.
    2. Download the current Storeman Installer RPM from OpenRepos.net (i.e., here, below), its "latest release" page at GitHub or the SailfishOS-OBS.
    3. Tap on the "File downloaded" notification on your SailfishOS device or select the downloaded RPM file in a file-manager app and choose "Install" in its pulley menu; then confirm the installation.
    4. Preferably disable "Allow untrusted software" again.
  • Installation via Storeman (i.e., updating from Storeman <  0.2.9)
    • If you have olf's repository at OpenRepos enabled, Storeman Installer shall be offered as an update candidate for the outdated Storeman installed: Just accept this offer.
      Otherwise:
    1. Search for Installer.
    2. Select the Storeman Installer by olf.
    3. Enable olf's repository in the top pulley menu.
    4. Install Storeman Installer.
  • Installation via SailfishOS:Chum GUI application
    1. Search for Installer in "Applications".
    2. Select Storeman Installer.
    3. Install Storeman Installer.

Features of Storeman Installer

  • The Storeman Installer is automatically removed ("uninstalled") when Storeman is being installed.
  • Storeman Installer 1.3.1 and all later versions are offered as an update candidate for Storeman, if an RPM repository is enabled, which offers the harbour-storeman-installer package and Storeman (harbour-storeman package) < 0.2.99 is already installed.
  • Installing Storeman Installer 1.3.1 and all later versions also automatically removes an installed Storeman (harbour-storeman package) < 0.2.99, which eliminates the former necessity to manually remove ("uninstall") an old Storeman.
  • Storeman Installer 1.3.8 and all later versions create a persistent log file /var/log/harbour-storeman-installer.log.txt.
  • Storeman Installer 2 runs "unattended": I.e., without any manual steps, after its installation has been triggered, until Storeman is installed.
  • Storeman Installer is slow, because it calls pkcon two (releases before v1.3.8) to three times (releases from v1.3.8 on), which acts quite slowly.  The minimal run time for Storeman Installer 2 is about 7 seconds, the typical run time is rather 10 seconds (measured from the moment Storeman Installer's installation has been triggered, until ultimately Storeman is installed).  This is already a lot, but I rarely experienced a stalled Packagekit daemon (for which pkcon is just a command line frontend, communicating with the daemon via D-Bus) during heavy testing, which can be observed with the crude pkmon utility (Ctrl-C gets you out.☺), so Storeman Installer now tries to detect these "hangs" and to counter them: If that happens, its run time can be up to slightly more than 1 minute.  In the worst case a stalled PackageKit daemon (and with it its pkcon client process(es)) stalls Storeman Installer, until the PackageKit daemon reaches its idle time out of 300 seconds (5 minutes; this could theoretically happen three times, resulting in a likely unsuccessful run time of more than 15 minutes).

Reporting issues, filing suggestions, asking for help

License:
MIT

Screenshots: 

Comments

objectifnul's picture

FYI, the latest working release is 1.3.5.
All newer versions do not work here (Xperia X + Sfos Vanha Rauma)
Unfortunately, the 1.3.5 rpm was just removed from Openrepos. Too bad.
1.3.5 still available at https://github.com/storeman-developers/harbour-storeman-installer/releas...

olf's picture

v1.4.4 might resolve your original issue, but as v2 works fine for you, that was rather an academic exercise.

olf's picture

@objectifnul, can you please provide the output of whoami; groups on your device: Copy&Paste the result here, or redirect it to a file with { whoami; groups; } > myoutput.txt which you can transfer and / or open in a text editor.

Background: I suspect that you use a defaultuser and its group configuration may be different compared to my devices (i.e., not in group ssu).

objectifnul's picture

$ whoami; groups
nemo
nemo video users account-email account-dropbox a
ccount-onedrive account-vk account-facebook acco
unt-twitter account-google account-fruux account
-memotoo account-yahoo account-jabber account-jo
lla account-onlinesync account-webcal account-ne
xtcloud sailfish-messages sailfish-phone sailfis
h-datetime sailfish-alarms sailfish-system ssu t
imed oneshot bluetooth graphics input audio came
ra media media_rw mtp inet

olf's picture

Thank you!
So my suspicion was wrong and I give up: As Storeman Installer 2 does the job, why care that v1.3.8 to v.1.4.3 might not work.

olf's picture

> FYI, the latest working release is 1.3.5.

Thank you for reporting that.

> All newer versions do not work here (Xperia X + Sfos Vanha Rauma)

As always, the statement "do[es] not work" does not provide anything helpful for analysing an issue.  Please file a bug report at GitHub and attach (i.e., upload there) the log file from /var/log/harbour-storeman-installer.log.txt after running the latest v1 release (currently v1.4.3; you need to remove ("uninstall") a Storeman ≥ 0.2.9 before that).

Or at least try a recent version of Storeman 2 (currently v2.1.6), after removing the freshly installed Storeman; if that works well, I might simply remove all v1 releases.

> Unfortunately, the 1.3.5 rpm was just removed from Openrepos.

I re-uploaded it due to your message, but will remove it again at some later point, because I do not want outdated versions to be offered here.

objectifnul's picture

It's okay now, thanks. My mistake was I stayed in Openrepos, where StoremanInstaller v2 is not available.
2.1.6 from Github solved the issue.

olf's picture

> It's okay now, thanks.

Glad to hear that.

> My mistake was I stayed in Openrepos, where StoremanInstaller v2 is not available.

No, that was not a mistake of yours, that is how I intended it, because I have not received any usable feedback (positve or negative: "works" or "does not work, as … <details>") since the last conversation with you here in May / June 2022.

> 2.1.6 from Github solved the issue.

O.K., that is minimalisic, but usable feedback: Will upload it here, now that someone else has tested it (all releases do work on my devices).

ScumCoder's picture

This does not work on XPeria10III @ VanhaRauma.

In order to install one has to manually d/l the aarch64 version from github and install it with

pkcon install-local harbour-storeman-0.3.1-3.aarch64.rpm
olf's picture

Please file a bug report (preferrably using the bug template) at https://github.com/storeman-developers/harbour-storeman-installer/issues
Without knowing the installed SailfishOS version exactly and which Storeman Installer version was used, it is impossible to address this.
> This does not work on XPeria10III @ VanhaRauma.
I can assure you, that it does work for most. Still I would like to understand what causes this issue for you, maybe others are affected, too.

objectifnul's picture

Sorry, I give up. I think I applied the DST root CA x3 fix correctly, then tried all available storeman releases again, no avail. I'm just an average user, this is beyond my skills and I don't have time to investigate further. My old Jolla phone is just a secondary device. Openrepos.net is okay, no storeman needed.

olf's picture

Oh, I missed to advise to also install a newer OpenSSL package from here: https://openrepos.net/content/openssl111102/openssl-111-102

If you are doing this manually (without Storeman), you also have to download the OpenSSL-libs RPM (omit the -devel RPM): https://openrepos.net/content/openssl111102/openssl-libs-111-102

When using the command line, you have to install these in one go (using the ARMv7 RPMs for your Jolla1 in this example):
pkcon install-local openssl-1.1.1kgit1-1.7.4.jolla_.armv7hl.rpm openssl-libs-1.1.1kgit1-1.7.4.jolla_.armv7hl.rpm

kidneystealer's picture

I'm commenting because I'm having similar issues, not related to storeman itself so sorry about that... I'm running a 3.3.0.14 port and this was a version I was able to install directly (not through the installer because of auth issues) because it required libsolv.so.0 (libsolv0 package instead of libsolv): https://build.merproject.org/package/binaries/home:mentaljam/harbour-storeman-sfos3.3?repository=3.3.0.16_armv7hl

I went through the certificate fix per the guide you linked, installed these newer OpenSSL packages as per your instructions, do I have to do anything else? I'm still getting Curl error 60 - SSL certificate problem: certificate has expired. :(

olf's picture

Sorry for replying so late, I am currently maintaining Storeman alone and lack the time to address comments here at OpenRepos in an timely manner.

> I'm commenting because I'm having similar issues, not related to storeman itself so sorry about that...

The second part of your message sounds, as if the opposite is the case: You did not use Storeman-Installer, resulting in issues with Storeman proper, because it seems that you manually installed an outdated version (from Mentaljam's unmaintained OBS-repository).

> not through the installer because of auth issues

What does that mean?  Which "auth issues"?  What was the exact error message?  With which Storeman-Installer version?  Does Storeman-Installer work, when started at the command line?  Please open a proper bug report with all these pieces of information at https://github.com/storeman-developers/harbour-storeman-installer/issues

objectifnul's picture

I can navigate at openrepos with the native browser. I was not aware of the DST root CA x3 affair. Will apply it later this week.

objectifnul's picture

Still investigating, and it's likely to be long. So far, I didn't find any Storeman release that is working on my good old Jolla phone (Sfos 3.4.0.24). Some releases couldn't be installed (dependency error), some did install but don't work (network error). I think I tried all armv7hl.rpm releases available at github. Maybe twenty or so.

olf's picture

Well, I can assure you that Storeman v0.1.8 works fine on my Jolla1@SFOS2.2.1.

Likely your issue is not directly related to Storeman.

Again: Can you sucessfully navigate at OpenRepos with the native web-browser (IIRC called "Browser")?

Did you apply the DST Root CA X3 fix?

objectifnul's picture

Storeman v0.1.8 fails to install on sfos3.4.0.24. "Nothing provides libsolv.so.0"

objectifnul's picture

Storeman Installer 1.2.7 actually works on Jolla phone, but the Storeman it installs (v0.3.0) doesn't work (keeps displaying "Network Error" all the time)

olf's picture

Then please file a bug report for Storeman proper: https://github.com/storeman-developers/harbour-storeman/issues
Also check that you can indeed reach OpenRepos.net in the native web-browser on that device and include the result in your bug report.
If you want to help bisecting this error, you can download all older versions of Storeman from the GitHub releases page: https://github.com/storeman-developers/harbour-storeman/releases
It would be very helpful to know the newest working version of Storeman (respectively the oldest non-working one, if even older versions work) on your Jolla1@SFOS3.4.0.

objectifnul's picture

Not working for Jolla phone/SFOS 3.4.0.24

olf's picture

Does Storeman Installer work, when called at the command line (as the regular, primary user: nemo or defaultuser)?
harbour-storeman-installer