Patchmanager patches in Koli 4.0.1

notes app fork patch does work for me

Thank you, it helped.

@pawel.spoon ok, thanks. I had to use command which mentioned @hsjpekka.

I still can’t get firejail-ed applications to run the patched files. (e.g.: email pulley patch)

Not clear to me: you mean I should first apply the patch in the Patchmanager GUI, and then I should manually reverse (-R) the patch on the command line?

i am not sure:
to me it seems all the patches i did use before update, i have to first reverse from coommand lline and then apply
sometimes i even need to apply them from cmd line.

i was able to apply the notes patch, but the email can be applied but does nothing on my phone

1 Like

I think I had the patches enabled in the patchmanager, when I did
devel-su patch -R -p1 -d / -i /usr/share/patchmanager/patches/<patch>/unified_diff.patch
There was Unreversed patch detected! Ignore -R? [n]
After answering y the patch was applied in the firejailed apps also. I think I did not reboot after that nor reapply the patches.
Worked with return-old-pulley-menu, for example.

1 Like

I didn’t find any email-pulley-patch in patchmanager3’s web catalog. I only find Jolla email colored toolbar and enchanced email cover. Have you installed the patch as a separate rpm from openrepos? I assume patch -R -p1 ... works or is needed with patchmanager3 only.

I checked: Yes indeed, you’re right, that was an RPM patch.

I checked sailfishos-patch-email-pulley-menu. It installs the patch file in the same directory as patchmanager3, and can be applied using pm3. I installed it, applied it in patchmanager, and nothing happened.
Then I run devel-su patch -R ..., answered y and when I opened the email, I had the pull down menu and no buttons.
Have you downloaded the new version of patchmanager from github? It claims to be version 3.0.1, but don’t believe that.

Oh, I re-read what you’ve written here and understood it: by typing y you’re actually ignoring the -R option and just straight applying the patch.

Now a bit of background about GNU patch / Patchmanager2 (and the rest of the planet) vs. Patchmanager3 / PreLoader:

  • GNU Patch and everyone else including old Patchmanager2 just straight up modfies the installed files.
    • This has the drawback that if you don’t remember to revert patches before updating, the modified files could clash with the new version comming from the update. (And leaving a buch of “.rpmsave” and “.rpmnew” files all over the place).
    • But this has the advantage that it always works (the modified files are here in the filesystem after all).
  • Patchmanager3 (just like its predecessors on WebOS based Palm/HP Pre) doesn’t actually modify the system files, but it stores modified versions inside /tmp/patchmanager and then on-thy-fly redirects application to use this modified copies instead.
    • The advantage is that the actual filesystem is left untouched. Thus the updates will always work because they always work on the original files.
    • The drawback is that this relies on this “on-the-fly” diversion to always work. But the firejail isolation also happens to accidentally isolate these apps from the preload mecanism. So filejailed apps will only see the original files left inplace filesystem. They will never see the diverted modified files in /tmp/patchmanager.

By running the above sequence (-R and then y, would’ve also worked without specifying -R in the first palce) you actually force patch to modify the files inplace.
Thus it becomes visible to firejailed applications because even the filesystem is modified.

It works, but you need to remember to manually run patch -R … later on to also revert the modification on the filesystem (PatchManager3 will only remove them from /tmp/patchmanager, not from the actual filesystem).

5 Likes

is launcher combined patch working for someone?

i have another issue: i need those smaller icons and for that purpose i installed ui themer some time ago because launcher combined from some point was not updated anymore. now i have to uninstall the themepack to be able to run droid applications again. i did not realize it first since i do not use them that often bit my banking app is droid bulk, pity.
now i saw launcher combined shows up again and i’d like to use it again but it does not work, there is someghing like glas over my screen and i cant do anyzhing when i want to go to launcher. that patch is so good, i really do not understand why jolla dont implements ot into their code.

if someone has another idea how to get 5 icons in a row on launcher (and on top menu i was used to have 6 in a row with the non working topmenu control patch, so its back to 4 which is huge).

and can someone pls line a command to revert patches from command line, looks like i tried this applying a patch from console which worked for email pulley bit if i read the last comment correctly i have to unapply it before next update manually :slight_smile:

@Atomfurz I don’t know the command to revert patches but you can reinstall the app

devel-su zypper in -f jolla-email

1 Like

From patch manual: -R means --reverse. If I understand the man page correctly, patch -R first tries to unpatch, and if not successfull, it asks whether to apply the patch (Ignore -R?).
Anyway, by running the same command I unapplied the patch.

2 Likes

installed @Kuba77 Return old incoming call screen patch, but restart preloaded services would not do anything, so restarted my XA2 - but my incoming call screen still looks the same. Patchmanager says it’s installed but it does not show. What could

At the moment, patches applied by Patchmanager3 don’t affect firejailed apps - at least that’s my experience: patches don’t affect many Jollas apps but do others.
You can manually apply the patch, but that changes the actual files, and then you need to manually unapply it also. Otherwise you might run into problems in future updates.

See above

try unapply it in Patchmanager a then apply with

devel-su patch -R -p1 -d / -i /usr/share/patchmanager/patches/return-old-incoming-call-screen/unified_diff.patch

and answer y to all question.

1 Like

Is there anybody where also had the new problem? After removing busybox-symlinks-bash and installing gnu-bash it is not possible to restart the homescreen with patchmanager or with sailfish utilities. How can I go back? Should I remove the gnu-bash and install the busybox-symlinks-bash?
Is this possible with:

pkcon remove gnu-bash
pkcon install busybox-symlinks-bash

Thanks in advance

Hum… weird, didn’t have any such problem. On the other hand I have switched teh entire terminal stack from busybox to gnu toosl. Not only the shell (real-deal bash instead of a busybox reimplementation subset), but also gzip,tar,sed,grep,findutils,diffutils and coreutils.
So it’s possible that there’s some subtle incompatibility that you get when mixing and matching tools from busybox and gnu that I don’t get.

well, yes. as long as you have one provided of /bin/sh and /bin/bash that’s okay.

NOPE! That won’t work. You need to have a /bin/sh at any point in time for your system to work. You’d be in possible trouble as you deinstall with the first command and have nothing installed before you start the second.
Normally, the package manager will detect the condition and should refuse uninstall (but I have more experience with zypper than pkcon)

Instead, you just try installing a different implementation of bash:

pkcon install busybox-symlinks-bash

and the package manager will detect that it conflict with gnu-bash (as both package provide /bin/sh and /bin/bash) and will suggest to remove one to replace with the other.

Thanks DrYak - yesterday I try the line pkcon install busybox-symlinks-bash but I got the message its not possible because gnu-bash is installed. It was good that I not tested both. The major problem is that I cant restart the lipstick.serviece. Also not from the terminal. I tryed follow lines:

systemctl --user restart lipstick
systemctl --user restart lipstick.service
systemctl restart lipstick

Only with Crest I can terminate the lipstick plugin and the homescreen restarted. This is nessecary for all patches on the homescreen. What can be the reason? Maybe I should reinstall lipstick? But is also not so easy.

Working fine here. What is the output of your stated commands?

image
The service statefs.service is missing.