Basilisk CI/CD and Automated Builds

Board for discussions around the Basilisk web browser.

Moderator: Basilisk-Dev

User avatar
Basilisk-Dev
Lunatic
Lunatic
Posts: 323
Joined: 2022-03-23, 16:41
Location: Chamber of Secrets

Basilisk CI/CD and Automated Builds

Unread post by Basilisk-Dev » 2023-08-16, 14:55

As mentioned in viewtopic.php?f=61&t=30152 I've been looking into automating parts of the Basilisk development workflow with GitHub Actions over the past couple of weeks.

https://github.com/Basilisk-Development ... or/actions

Please note that while this repository exists on GitHub and these builds occur on GitHub Actions, all Basilisk development takes place on repo.palemoon.org. This repository and these actions are fully automated and I do not check their issue trackers or anything else on there on a regular basis.

I've fully automated the process of building unofficially branded Linux builds with the latest changes from the master branch. These builds can be downloaded from the GitHub Actions build artifacts here.

The following builds are automated:
Linux x86 32-bit with GTK2
Linux x86 32-bit with GTK3
Linux x86 64-bit with GTK2
Linux x86 64-bit with GTK3

The 32-bit builds are built on Ubuntu 22.04 with GCC 9. I would have preferred an older Ubuntu version so the build would be linked against an older Glibc. 22.04 was selected because there were dependency resolution problems for the i386 packages under Ubuntu 20.04.

The 64-bit builds are built on Ubuntu 20.04 with GCC 9.

I do not plan on officially releasing 32-bit Linux builds at this time, but if you need 32-bit Linux builds this may be an option for you.

Please note that all of the above mentioned builds are built from the latest changes in the master branch. In other words, they are not officially supported. I will ensure the GitHub Actions don't break but don't come to me for support from issues experienced when using these builds. I do not recommend using these as your every day builds. These are mainly intended for development and to test upcoming features.

I do not intend to automate the official release builds because the release builds are built on an older distribution so that they link against an older Glibc. I am however enabling the GitHub Action to build against the release branch. The release branch builds are the ones I suggest using if you chose to use a GitHub Actions build.

I am still looking into automating Windows builds. Windows is much more difficult to automate in my experience.
Basilisk Project Owner

viewtopic.php?f=61&p=230756

User avatar
FranklinDM
Add-ons Team
Add-ons Team
Posts: 582
Joined: 2017-01-14, 02:40
Location: Philippines

Re: Basilisk CI/CD and Automated Builds

Unread post by FranklinDM » 2023-08-16, 16:32

Off-topic:
Looks cool! I'm surprised that it's even possible to build an application like this that takes more than an hour to compile via GitHub Actions at no cost...

User avatar
Basilisk-Dev
Lunatic
Lunatic
Posts: 323
Joined: 2022-03-23, 16:41
Location: Chamber of Secrets

Re: Basilisk CI/CD and Automated Builds

Unread post by Basilisk-Dev » 2023-08-16, 19:21

FranklinDM wrote:
2023-08-16, 16:32
Off-topic:
Looks cool! I'm surprised that it's even possible to build an application like this that takes more than an hour to compile via GitHub Actions at no cost...
Off-topic:
I was surprised by this too. According to their documentation on the free GitHub Actions your GitHub Action can run for up to 6 hours before it times out.
Basilisk Project Owner

viewtopic.php?f=61&p=230756

User avatar
Basilisk-Dev
Lunatic
Lunatic
Posts: 323
Joined: 2022-03-23, 16:41
Location: Chamber of Secrets

Re: Basilisk CI/CD and Automated Builds

Unread post by Basilisk-Dev » 2023-09-03, 01:34

Update: Automated builds have now been implemented for 32 and 64-bit Windows builds.
Basilisk Project Owner

viewtopic.php?f=61&p=230756