-
-
Notifications
You must be signed in to change notification settings - Fork 139
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug]: Automatic updater gets run on Linux #308
Comments
it should be miru that updates the package not the package manager, this isn't something I'm willing to support or change, use AUR if this is a problem |
Yes, this is a problem because I use AUR. Lemme tell you my situation:
Even if the built-in updater worked, it would not make sense to self-update it, because the system package manager would not detect it (because in its index Miru is still on an older version), and still would upgrade Miru to the latest version anyway. My proposed solution is either:
If you still decide not to support it, I will just probably maintain a fork with Linux compatibility patches. |
i still dont understand the issue here, the auto-updater simply doesnt work, so it doesnt matter that it doesnt work? and aur simply will update it regardless? @Muril-o is this actually an issue? I'm not turning off the auto updater, and I'm not even willing to provide code for it, it exists for a very very very valid reason, and updates are forced for the same very very very valid reason. Im a solo dev so it often happens that I push broken versions, forced auto-updates are mandatory |
Yes, but I constantly get bombarded with the please restart miru notifications. |
electron bug, not miru bug |
Regarding the auto-update feature itself, this is the intended behavior, the auto-updater does not and should not work by itself on GNU/Linux. I'm strongly against applications, installed through a package manager (or AUR helpers in this case), managing their own versions. But this is not the issue @kyngs is describing. As far as I understood, they're fine with being behind a couple versions (because they don't want to run the package manager update all the time), but they don't want the constantly 20 mins update reminders. This is not an issue that existed before, this is actually electron-related. From the electron documentation:
Turns out there's now a built-in support for auto-updater on GNU/Linux since the 4.2.3 electron version bump.
Hello, that's me, I'd in fact appreciate help on maintaining the AUR package as I'm on Guix now and been slowly migrating away from Artix (my previous distribution). I feel like I don't have enough time to keep up with Miru's frequent updates, so a little bit of help would be appreciated. |
I absolutely agree with this. On Linux, programs should be managed by the system.
That's ideal, how does the script detect whether it's running from an AppImage? Is it from some environment var?
I personally use the miru-git package, however, in your package, maintaining it should only require bumping the version. |
Need testing but I believe its an env var called APPIMAGE, since before the bump we had this warning: |
Looks like it resolved in electron-updater@6.1.3 for some subset of distros. Can confirm it's not erroring now but updater still unusable on arch tested on it's latest release @6.1.5.
Sweet message when installing dpkg i almost done mistake thanks for warning pacman. Look's like electron-updater can break arch)
Guess we can't avoid workarounds on arch. The most easiest would be add flag to disable updater on unsupported platforms keeping it running by default. I asked a question on electron-builder let's see what community think. |
has electron fixed this yet? |
It's working as I said. Would work anywhere where dpkg can be used to manage dependencies. But not for arch according dpkg install warning. I think we can try implementing update mechanism by yourself through cloning miru-bin aur package into tmp folder and then replacing version and checksum in PKGBUILD file running makepkg -si afterwards. If forcing updates is truly needed. I think everyone would be happy this way. Can do a PR if you agree with that. Don't think electron can do much with it because you need to have package on aur or built it into miru itself to do that. Can be considered but implementing this in miru side seems faster than waiting upstream. Through contributing this in electron-updater can be considered separately. |
This would assume that the package would be updated instantly when a miru update releases. Otherwise the auto updater would get stuck in an endless loop of updating miru. Forcing updates is simply a bad idea and should be scrapped. Also, this would require miru to have root access, which simply sucks too. |
It won't assume it will be cloned and updated by hand written updater module automatically. Because current way @Muril-o handling install requires only bumping a version and changing checksum in PKGBUILD. Which I currently doing manually to update because obviously he can't catch up with updates instantly. |
How exactly has this been resolved? |
electron-updater now properly supports .appimage and .deb files, which i distribute via releases, and for now those are the only official ways of installing miru, the "but flatpak and aur updates" is an issue addressed to their maintainers not to me tbh |
@ThaUnknown, thanks for your assistance! I've discovered that auto-update functions correctly with both .appimage and .deb formats. However, I'm encountering issues with the .rpm file. When a new version is available, it gets downloaded, but it doesn't seem to install correctly. As a result, the application restarts using the old version and notifies me that a new version has been downloaded again and again. Any suggestions will be really appreciated. |
That goes the same for Arch. Afaik, he said that only .Deb and appimage is officially supported. I've resolved this by forking the program and just yeeting the auto updater |
probably should just drop the AUR package from the README since its out of date at version 4.5.9-1 and just outright say you support only the .deb and .AppImage which is more than enough. There is also a flatpak package that is well-maintained. There is definitely a bug when A) Miru is out of date and B) when Miru is not on the target platform. The AppImage updater works fine when the download method is using the AppImage, but outside of that it automatically assumes the platform is Debian/Ubuntu and does what I mentioned in my issue. I'd be happy to send a PR to just fix this |
Let's just imagine for a second that core problem is aur package outdated most of the time... I tried to contact with it's maintainer which i belive is @Muril-o through email and suggest doing simple github actions thing for that. The flow is followingMiru CI(deploy new version & trigger external workflow in miru-bin) -> miru-bin CI(updates it's sha hash and version from workflow_dispatch args commiting to itself and pushing to aur) That way aur package keeps separated and updated straight up on miru release by webhook without any human interaction. |
Preflight checklist
What app version are you using?
v4.2.7
What operating system version are you using?
Linux
Expected Behavior
Miru lets the system package manager handle the updating.
Actual Behavior
Miru automatically tries to update. Since most if not all Linux installations are done through the package manager, this could cause conflicts when the package manager tries to update Miru. An alternate solution would be to include some file in a specific location, indicating that a package manager manages the current Miru installation.
Also, does the updater also run on dev builds? This could be unintended too.
Screenshots
No response
The text was updated successfully, but these errors were encountered: