Hello,
I would like to test websites against old versions of WebKit (the engine powering Epiphany and Safari) and the obvious way to do it without needing a SaaS solution like Browserstack would be to install old versions of Epiphany.
My first idea was to look at Snap and Flapak (as that would prevent issues with mismatched dependencies) but neither offer any version other than the latest.
Does anybody have an idea?
Build it from source?
https://gitlab.gnome.org/GNOME/epiphany
https://github.com/WebKit/WebKit
Might be a bit of work first the time, but should get easier for other versions?
If you have a mac: https://webkit.org/build-archives/#mac-sonoma-x86_64 arm64
I’m not familiar with flatpak-builder, does it handle dependencies not available on the system?
Not a clue, never used flatpak-builder. I was more thinking of just building the binarys rather than entire flatpaks
My main fear with building the binary is that it would eventually require old dependencies that I do not have on my system.
Stand up a little VM with an install of Debian 9.
Don’t mess with your main system, don’t worry about flatpaks, and you can just get rid of it if you’re done with it.
Valid concern. But at that point you just built that dependancy as well. Really depends how far back you want to go?
At least 4-5 years back, I want to test behaviors of WebKit circa iOS 13
It should, however, be possible to install old versions using flatpak.
I know, but Flathub only offers versions built in 2024.
That’s odd.
The old versions are not intended to be used like this, they get cleaned up for space, otherwise it would be petabytes of unused software.
That makes sense, as most users automatically use the most recent version and don’t need to downgrade to prior ones.
Surely not the most elegant solution, but you can download old Gnome live ISOs of e.g. Debian and run in a VM.
Oh, why haven’t I thought about this sooner?
Maybe you were hoping that there is an easy and elegant solution like Appimage, Flatpak or Snap.
Snaps? Elegant??
More elegant than running an entire Linux system in a vm.