💾 Archived View for ruario.flounder.online › journal.gmi captured on 2024-02-05 at 09:29:50. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2023-12-28)
-=-=-=-=-=-=-
The following is a 'stream of consciousness' (micro *log style).
finger ruario@happynetbox.com
🔔 Subscribe [ruari@plan.cat] (ActivityPub)
I have to do a presentation on the features for our next major (Vivaldi) browser release tomorrow, for a bunch of our Ambassadors. I have not prepared a damn thing. Oh well, hopeful I will get through it on pure charm. 🤪
Ok, this has gone on long enough. Now I HAVE to write up something about flatpak and Vivaldi. 😜
Well I did not get the Vivaldi snapshot (test build) out yesterday. I had everything lined up but then I had to head home. One of the (unlisted) changes was to the installer/updater to work following changes needed for Chromium 120. So I really needed to check this carefully. However, I forgot to bring a Windows laptop home with me and I generally only run Linux and macOS at home.
This morning I installed Windows under a VM on my Mac to allow me to double check this before we went live with the snapshot. Anyway, the snapshot is out now! 🎉
Something for the weekend – Vivaldi Browser snapshot 3201.4
Well… the snapshot is not out yet but it is tested and the day is not over yet. I can still do this! 😉
Ok, my list of things to do is not going down. Nonetheless my new priority will be getting out a Vivaldi snapshot based on Chromium 120. I shall set my sites low and say that if I at least do that I will have achieved something useful today.
So I guess it will be another day of trying to work out a bug I have struggled to understand for the last three days. Hopefully this time I will get it and perhaps also manager to continue with the other tasks I have had on the back burner all week.
Both of my kids are currently obsessed with Duolingo. As I sit here I can hear German coming from one room and French from another. 😆
Ok, time for bed. I am not a religious man but I am (almost) praying for no security update to Chromium tonight as not really prepared and I really do not want to have to do a minor update tomorrow morning.
I spent the whole day again looking at a common crash our users encounter and not only found the cause but got one of the devs to fix it. Yes!!! … Or at least that is what I thought! Then I discovered that:
So… we fixed a bug and made the system more robust but it does not help the users who reported issues and quite possibly it will never benefit anyone. Oh… and I still have to work out what the actual issue was about. So I can't really check that off my todo list.
I did manage to close one of the real problems I wanted to fix today but it was the least important and there were six things I wanted to get done. FML! 🤪
Ok, into the office I go. If I get half of my list of things I should do today done. I am calling that a win. Understanding that crash and getting out flatpak documentation should be bare minimum.
Ok, time for bed methinks. Posting my list again for tomorrow.
Well I got one item from my daily checklist done and half of another. Since there were four items and two bonus ones, that is not ideal. 😆
Ok, the checklist for today
Bonus, if I have enough time
A small discussion about Swatch .beats (and so decimal time) started on the Fedi after @mike@chinwag.org shared his GPS-synced "Internet Time" clock. I need to keep an eye on myself so as not to bore everyone to tears. 😆
Clean up around the house or waste time looking at pointless sites on the internet… yeah… the first is the correct answer but I know I will end up doing the latter.
I forgot to mention that I went with a gold tone frame because I am a "fancy man". 😉
The frame on my 26" wheeled unicycle is now permanently stuck to the seat post. This is a problem because it is one of the unicycles I use in the winter and I adjust the crank length to deal with different conditions in the snow. Longer cranks make for a slower ride but give better traction and balance at low speed. This is great for deeper snow. If it is just a light dusting however I run short (fast) cranks. When you adjust the crank length on a unicycle you have to adjust the seat height to match.
Anyway, I had this happen once before because I did not look after it in the winter and rust took hold. Last time a lot of hammering allowed me to eventually unfree it but not before I had initially given up and resorted to buying a new frame (and seat post). In the end this was OK as when I did eventually free it I built up two unicycles instead (one with the old frame and one with the new one).
You would think I would have learnt my lesson but obviously not… so I have ordered another frame (and seatpost). Nothing fancy just a relatively cheap steel frame but an additional €112 (after shipping and everything), that I did not need to spend. But this is the last time I will make this mistake (probably).
Shh… don't tell anyone but it is 9:95 and I am still awake.
Ok, it is late but I will not let it get as late as yesterday. I shall head off to bed now. My (decimal) watch currently reads 9:64.
The point of a watch is to help you understand where you are in a day's cycle so that you know when to do a given action. The decimal watch that sits on my wrist reads 0:17. This tells me it is time for bed (well… long past that time actually!).
Ok, I am still lying in bed. I need to get up and get the fuck on with my day. 😆
It might be the weekend but I still have this feeling of not being "free" because I have that post I need to write about the Vivaldi Flatpak hanging over me. My colleagues (especially in marketing) would like to have something to point users at to explain our stance. At the moment we are just pointing them over to Joey's OMG Ubuntu post, which is a great article but they want something more official (even if the Vivaldi Flatpak is not).
Vivaldi Web Browser is Now Available on Flathub [OMG Ubuntu]
Since I know it will be the first question on Monday morning, I can't help but feel pressure to write something over the weekend, even if I do not feel like it.
Oh and I also need to write an FAQ/tips and tricks page for our help section.
Ok, fixed @gnuplusmatt@fosstodon.org's bug. 😉
I can see this Flatpak will be a lot of small maintenance at the beginning
@gnuplusmatt@fosstodon.org reporting and issue with the Vivaldi Flatpak name matching under Wayland
Bought tickets to the UK and back for early next year. Ferry and train on the way there and sadly a plane on the way back. Glad that is out of the way as it was hanging over me and I know the prices go up!
Also… I really should go to bed. I have no idea what I am doing awake at this time!
Hmm… looks like I will need to make a blog post explaining the whole Flatpak thing to users in one place. I have answered questions but they are scattered all over the place.
I will try and find some time for that tomorrow.
I did my first (minor) update of the the Vivaldi Flatpak today and fixed an issue with saving screenshots.
Well the Vivaldi Flatpak went through.
There has even been one article from OMG Ubuntu already
Vivaldi Web Browser is Now Available on Flathub [OMG Ubuntu]
This is the command to install the latest test version of Vivaldi Browser as a Flatpak. As far as I know, everything should be working now.
flatpak install --user https://dl.flathub.org/build-repo/64203/com.vivaldi.Vivaldi.flatpakref
If anyone sees this and tries it and finds an issue, let me know. 😉
The Vivaldi snapshot, I spoke about last time is out. Four new features and 74 fixes!
Four new features and 70+ bug fixes – Vivaldi Browser snapshot 3189.3
And I got past the last issue with my flatpak. Assuming neither testing nor code review shows up anything else, I should be done.
Ok… bed time. If by chance any Vivaldi fan happens to stumble across this, there will be a snapshot tomorrow and it will be a particularly interesting one! 😉
Hmm… Vivaldi installed PWAs (progressive web apps) will not launch from desktop environment using the flatpak version. They do work however if you launch them via the browser directly.
I think this might actually not be our bug but rather a more general issue with the system flatpak uses (zypak/cobalt) to trick Chromium to run its sandbox in a non-standard (unsupported) way. I did mention previously it is an unsupported hack job. 🤷🏼
Well it is testable
flatpak install --user https://dl.flathub.org/build-repo/63958/com.vivaldi.Vivaldi.flatpakref
The downside of course is that once this is done, the pressure will ramp up to get out a Vivaldi "Snap" version and I look forward to that even less. Flatpak might not be ideal (IMHO) but at least it is not designed to lock you in to Canonical dependency.
Well back on Friday, the Flathub team had some infrastructure issues that prevented moving forward with my Vivaldi submission. Apparently they will look at it today. I wonder if I can get all of this finalised before the week is up? 🤔
In all honesty, I have no idea how long this normally takes.
While I might not be a massive fan of Flatpak I prefer it to Snap. Snap feels every much like a way for Ubuntu to lock you in and gain control of packaging across distros, since the backend is closed and they run the only store. I also think it is terrible how they intentionally hobbled out of the box Flatpak support on Ubuntu because they knew they were losing mindshare. Rather than compete on a level playing field, they just tried to harm the competitor.
Also you just know that in the end this will all fall apart and they will have to embrace Flatpak after all. Just like what happened with Unity vs. Gnome, Mir vs. Wayland or Upstart vs. SystemD.
However their behaviour each time shows me that at their heart Canonical does not want to work with anyone. If they had their way they would be just like Alphabet, Apple, Microsoft, Amazon, etc. And I mean that in the worst possible way.
Fun story, when I should have been working to resolve issues with the Vivaldi flatpak I got distracted and made a shell script installer to quickly test Vivaldi on a bunch of distros that did not support official packages. It make me thing of this post on the fediverse
post by Mark Johnson (@marxjohnson@ubuntu.social) Nov 11, 2023
Inspired by a discussion in an upcoming @linuxmatters episode
The post has one attachment. The attachments alt text is:
X-men "Perfection" meme with 6 panels.
Panel 1: snap install packagenane
Panel 2: "I prefer the real install command"
Panel 3: sudo apt install packagename
Panel 4: "I said the REAL install command"
Panel 5: curl http://packagename.info/install.sh | sudo bash
Panel 6: "Perfection"
I am currently working on getting Vivaldi Browser onto Flathub, which involves creating the various files to convert our .deb package to flatpak format.
Add com.vivaldi.Vivaldi #4422 (flathub)
This has been ongoing for a while now (several months), largely because I keep on procrastinating and doing other stuff instead. But it looks like I am close now. It is a weird why it takes so long. I am not procrastinating because I am not capable of doing it… I just don't wanna and there is always something else I could be doing! 😆
In the past, I have actually done software packaging for Arch, Slackware, .deb, .rpm and created various shell based installer/uninstall scripts. I even had a play around with AppImage and Snap packaging at one point (though never published anything publicly using either). Oh and I have also written guides to removing software that was installed from source.
'make install', uninstall help
During all of this I have spent time reading lots of packaging guides, along with both the Filesystem Hierarchy Standard (3.0) documents and the XDG Base Directory Specification.
XDG Base Directory Specification
In short, while I would certainly not claim to be an expert, I am also not a total newb either. Still I find Flatpak annoying. Part of it is because of the sandboxing considerations (I get why they are a good thing but they are annoying from a maintainer perspective) but also just because I am not totally sold on the whole concept. I am not a fan of bundling of all dependencies with the app or the idea of a new cross distro packaging standard to replace them all. Firstly I do not believe that will ever happen on Linux and also, right now it is not "readily available" or "easily installable" on "all distros", despite multiple what the fanboys say. Indeed they only say that because their concept of an alternative distro is running Mint or Fedora, rather than Ubuntu. I also get a strong xkcd "standards" vibe.
There is an extra problem for me in addition. Vivaldi is based on Chromium and the Chromium sandbox and the flatpak concept of sandboxing do not play nice together. Again I will not profess to be an expert but nonetheless see my comments from the vivaldi.net forums in answer to questions about why Vivaldi is the only browser company without a flatpak—Spoiler: It isn't. There are NO "official" flatpaks for ANY Chromium based browser and in fact Firefox is the only "major" browser that has an "official" flatpak, last I checked.
My reply to "make a flatpak" on the Vivaldi Forums (21 May 2023)
Security is also harder on flatpak for Chromium based distros. You must replace the Chromium SUID sandbox with zypak, which is maintained by [AFAICT] a single person and in addition the SUID sandbox is a fallback in the first place, happening only because the namespace one cannot be setup by Chromium when running under flatpak.
There is a reason there is not a single officially maintained flatpak from the Chromium browser manufacturers.
That is not to say we will not do it (I need to spend more time looking at this). I have made a flatpak internally whilst testing which is why I became aware of all of this. 😉
My follow up reply on why no Vivaldi flatpak (24 May 2023)
Firefox does not contain the same sandboxing mechanism that Chromium does, so the fact that they have an official app is basically irrelevant. I presume because they do [something] differently [and] do not hit the same problems that Chromium apps do, which I will expand on now.
So let's start by saying that the Chromium sandbox is actually very good and it is fully [interprocess]. flatpak's "sandboxing" is typically only used to [separate] the app (in our case Vivaldi) from other apps and/or from parts of the OS. In Chromium if you load facebook in one tab it cannot get access to the process that runs youtube in your other tab.
But the Chromium sandbox needs greater integration with the OS and the attempts by flatpak to handle sandboxing clashes. Thus all the Chromium browsers and Electron apps use a hack (Zypak) which fakes part of the chromium sandbox.
In short, Flatpak doesn't allow important parts of the Chromium sandbox to work as intended by the Chromium team, when running under Flatpak. So you either end up with no internal (interprocess) sandbox or one which is replaced with something potentially weaker and certainly less well understood and tested. Zypak is maintained by a single person. Those responsible for the Chromium sandbox are a whole team.
I do not currently feel confident that you aren't actually getting less security trying to run a Chromium based app in flatpak. I also strongly suspect this is why you are not finding a single official flatpak by any Chromium based browser. Either they decided it is less secure or they suspect it might be and do not want to take a risk.
If we made this official we would be saying this is Ok and my gut tells me it really is not!
So … wait… why am I creating a flatpak on flathub for Vivaldi? Well, the users never stop requesting it even if they could use an official package or their distro of choice provides a nice repack. I suspect many of them ask because they are convinced it is more secure and safer, even if it might not be (nobody told them that was a possibility). But… since they ask my boss and our marketing team really wants us to support flatpak.
As a compromise I decided to put one out as myself and clearly label it as "non-official" (even though I am a Vivaldi employee who helps maintain our official Linux packages). This is not unprecedented. For a little while I unofficially maintained Vivaldi for Arch Linux and I still maintain Vivaldi for Slackware (via Slackbuilds).
Vivaldi on the SlackBuilds Repository
So this is an experiment to provide something on par with what is available for the other Chromium browsers (Chrome, Edge, Opera, Brave, etc.), for which there are non-official flatpaks (albeit none of them are maintained by employees of their respective companies AFAIK). It also makes it easier for me to walk away from it turns out to be a bad idea. So in summary, I am working on it… but I still recommend you use a different package type if one is available to you. 😉
Yep, that works… phew. Ok, I can start using this again.
So… it has been 196 days or over half a year since I last wrote here. And in all honestly in that time I have largely forgotten the various tools I have written to manage this journal. 😆
Sure it is just text but it gets converted to a few different formats and cross-posted to several locations. So… let's start with a test and see if I can even post this in each of those places. 😉
⁂