Compare commits
214 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bdee933bb7 | ||
|
|
cd229782af | ||
|
|
cb0418a125 | ||
|
|
8f607da74f | ||
|
|
ecbc75b72c | ||
| e6d0d3a00e | |||
|
|
a09088b453 | ||
|
|
af044e3304 | ||
|
|
083f14d8c7 | ||
| f4dfbce94b | |||
| fa50ab2279 | |||
| 8e511a8753 | |||
| b737e5783f | |||
|
|
4070c5bdeb | ||
|
|
e199efddca | ||
|
|
383f413bba | ||
|
|
1f6f06e9b4 | ||
|
|
8d716372e7 | ||
| 5b6e193b9a | |||
|
|
d8abb1279e | ||
|
|
a29404f692 | ||
|
|
ab018ea341 | ||
|
|
d3385ccd8f | ||
| 9985e3de44 | |||
|
|
3aafd846ab | ||
| 7a4b5f652e | |||
|
|
06af8517f2 | ||
|
|
66b780ea0d | ||
|
|
4758ff2508 | ||
|
|
36b08ee7f0 | ||
|
|
f2d98eba7e | ||
|
|
694cbfbc08 | ||
|
|
17a622c951 | ||
|
|
aef036119c | ||
|
|
63e9a7cafa | ||
|
|
2e2408a16a | ||
|
|
a6a221cc59 | ||
|
|
829d1c8a36 | ||
|
|
18135d5494 | ||
| 004feab548 | |||
| 22acc65b52 | |||
|
|
9e9f913886 | ||
|
|
9dc9e4ecd2 | ||
|
|
8001d745da | ||
|
|
d28ed6123f | ||
|
|
5aa415ad6a | ||
|
|
dff787bde5 | ||
|
|
85949fec35 | ||
|
|
d2bc452167 | ||
|
|
0a0042c4b5 | ||
|
|
0090a46403 | ||
|
|
7e19bbd5c2 | ||
| d6f27133ea | |||
|
|
68d4756d6c | ||
|
|
71c6415b80 | ||
| 91a788d7a6 | |||
| 1ca0993791 | |||
| 55c910325c | |||
| 769135543b | |||
| 82859aba56 | |||
| fdb6bda9c2 | |||
|
|
e0e82a85ed | ||
|
|
25a0c04a71 | ||
|
|
8ea7f23fe6 | ||
|
|
09f1178eca | ||
|
|
97fa92724d | ||
|
|
90f7b46f79 | ||
|
|
15f98171a3 | ||
|
|
abb5a378f4 | ||
|
|
e300624792 | ||
|
|
807ffcb40d | ||
|
|
d1c324ebd1 | ||
|
|
f4816d64ab | ||
|
|
78364ce675 | ||
|
|
ccaa7d6cbf | ||
|
|
c62860eb6f | ||
|
|
efcc11ba56 | ||
|
|
376d4cfa8c | ||
|
|
76992abd67 | ||
|
|
3dd22413c1 | ||
|
|
77a3f04e29 | ||
| 6a1872110d | |||
| cfcc1971b9 | |||
|
|
902e758ed1 | ||
|
|
c6c9928ccc | ||
|
|
dadf10b618 | ||
|
|
0e2d879168 | ||
|
|
643e08734d | ||
|
|
8506c341d2 | ||
|
|
011359bb7a | ||
| b5ee671680 | |||
| 2a5fac9a03 | |||
| 1749acf960 | |||
|
|
0e2b04be48 | ||
| aca2ee2794 | |||
| f10c273378 | |||
|
|
0649106bde | ||
| 24765f8704 | |||
| 38d4f63c19 | |||
| 2139a5bb7a | |||
| 8e120aa02f | |||
|
|
af971cc5c5 | ||
| 9e9d026ad7 | |||
|
|
18e492ace4 | ||
|
|
7420e88731 | ||
|
|
5fffe2749a | ||
|
|
dd00a6e889 | ||
|
|
24ef5bf0a2 | ||
|
|
c838bb5072 | ||
|
|
ccbbbee766 | ||
|
|
6303d80750 | ||
|
|
4255e74946 | ||
| 8c2af0467f | |||
|
|
8ca3d3a357 | ||
|
|
b5bcce1144 | ||
|
|
07981362e2 | ||
|
|
f41fa46731 | ||
|
|
f64b2d37a5 | ||
|
|
516fd88e41 | ||
|
|
2112388fad | ||
|
|
fece198ede | ||
|
|
f7edf758da | ||
|
|
c3b4f48c1c | ||
|
|
9140cb3e2c | ||
|
|
342da45bc2 | ||
| 4832eb0208 | |||
| 5c385c24ce | |||
|
|
f3febe32ca | ||
|
|
ce966941fe | ||
| 25dbc8f9bc | |||
|
|
a1831bf856 | ||
|
|
f65583f9bb | ||
| b064e0d184 | |||
|
|
831d38ad97 | ||
|
|
016c20f0ac | ||
| 46f1bf0851 | |||
| 660c1bb4c3 | |||
| b35d030dcb | |||
| bf7c7fa152 | |||
| e25ed5c3db | |||
| ea6e889fb6 | |||
| b692336165 | |||
| c784aca7ab | |||
|
|
d4f4559435 | ||
|
|
790d278b0c | ||
| 198e49b5d2 | |||
| e33759bf56 | |||
|
|
1f4ceafc71 | ||
|
|
d1b3accf09 | ||
|
|
b532e4d300 | ||
| 9013252a6e | |||
| 1b032488e4 | |||
| 88a3ab7076 | |||
| 3909116e66 | |||
| ac77ca8d17 | |||
| 3bae0b2f6a | |||
| 56450331a5 | |||
| 30d95d570c | |||
|
|
23000ebdbe | ||
|
|
5403824dbd | ||
| 208202c71d | |||
| 136900924d | |||
| 2f932a5886 | |||
|
|
9604815d64 | ||
|
|
9d48a5f93d | ||
| 432c8dde9e | |||
| 850effa8b1 | |||
|
|
5bdc1203c6 | ||
|
|
844e5167ab | ||
| cb21fa537c | |||
| e1fafc38a2 | |||
|
|
71a7bf3dd2 | ||
|
|
2008a3323f | ||
|
|
88ff5ebfbc | ||
|
|
6572c3b395 | ||
|
|
2520fdd041 | ||
|
|
c451a43725 | ||
|
|
a0afaa4b34 | ||
|
|
24507d7724 | ||
| 3c3250f391 | |||
| 5deedf5163 | |||
|
|
4db0689b69 | ||
|
|
53139c3305 | ||
|
|
446bed6c98 | ||
|
|
43f633b843 | ||
|
|
424ed8f2c1 | ||
|
|
b5cbf1e6bd | ||
| af353802af | |||
| 930ac4eb9b | |||
| cbf129968b | |||
| 2440f7ad8f | |||
|
|
ab2a6d4756 | ||
|
|
6bc8e5a648 | ||
| acd83b376d | |||
| f8cf1bb3b4 | |||
| bf1e84856f | |||
| b29f841a75 | |||
|
|
7f01dde28b | ||
| 4579d0a8d2 | |||
|
|
5b969e9429 | ||
| 82d97de545 | |||
|
|
c99f6db415 | ||
|
|
fbb0e2ebee | ||
|
|
f445f0bf9d | ||
| 3ce0dfc826 | |||
|
|
f3bba664c9 | ||
|
|
778b9f5325 | ||
| fb361a5913 | |||
|
|
a1b7a17d66 | ||
|
|
5b29151528 | ||
| bb781f79d6 | |||
| f744b56919 | |||
|
|
07115843d6 | ||
| 77ec234e91 |
22 changed files with 531 additions and 257 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
|
@ -1,3 +1,2 @@
|
|||
/librewolf-*-*.source.tar.gz
|
||||
/typescript
|
||||
/librewolf-*
|
||||
/work
|
||||
|
|
|
|||
226
.gitlab-ci.yml
226
.gitlab-ci.yml
|
|
@ -1,7 +1,34 @@
|
|||
stages:
|
||||
- images
|
||||
- build
|
||||
- release
|
||||
- deploy
|
||||
|
||||
# Notes; we want short labes so we can see what is what, and
|
||||
# allow image builds on all branches because don't wan to
|
||||
# deal with them on the master branch
|
||||
Images:
|
||||
stage: images
|
||||
when: manual
|
||||
image: registry.gitlab.com/librewolf-community/browser/bsys5/dind
|
||||
tags: [autoscale]
|
||||
parallel:
|
||||
matrix:
|
||||
- DISTRO:
|
||||
- debian11
|
||||
- debian12
|
||||
- ubuntu20
|
||||
- ubuntu22
|
||||
- mint20
|
||||
- mint21
|
||||
- fedora37
|
||||
- fedora38
|
||||
- dind
|
||||
script:
|
||||
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD
|
||||
registry.gitlab.com
|
||||
- make docker-$DISTRO
|
||||
- docker push
|
||||
registry.gitlab.com/librewolf-community/browser/bsys5/$DISTRO:latest
|
||||
|
||||
Build:
|
||||
stage: build
|
||||
|
|
@ -11,34 +38,34 @@ Build:
|
|||
matrix:
|
||||
- DISTRO:
|
||||
- debian11
|
||||
- debian12
|
||||
- ubuntu20
|
||||
- ubuntu21
|
||||
- ubuntu22
|
||||
- mint20
|
||||
- fedora34
|
||||
- fedora35
|
||||
- macos-x86_64
|
||||
- macos-aarch64
|
||||
variables:
|
||||
SOURCE_URL: $SOURCE_URL
|
||||
use_docker: "false"
|
||||
image: librewolf/bsys5-image-$DISTRO
|
||||
- mint21
|
||||
- fedora37
|
||||
- fedora38
|
||||
image: registry.gitlab.com/librewolf-community/browser/bsys5/dind
|
||||
tags:
|
||||
# Build on dedicated runner
|
||||
- dedicated
|
||||
- autoscale
|
||||
except:
|
||||
- merge_requests
|
||||
script:
|
||||
- make $DISTRO
|
||||
- echo VERSION=$(cat version) >> variables.env
|
||||
- echo RELEASE=$(cat release) >> variables.env
|
||||
- echo SOURCE_RELEASE=$(cat source_release) >> variables.env
|
||||
- "t=$(cat version)-$(cat source_release) ; if ! grep 1 release; then t=$(cat version)-$(cat source_release)-$(cat release); fi; echo FILEVER=$t >> variables.env"
|
||||
artifacts:
|
||||
paths:
|
||||
- librewolf-*.deb
|
||||
- librewolf-*.deb.sha256sum
|
||||
- librewolf-*.rpm
|
||||
- librewolf-*.rpm.sha256sum
|
||||
- librewolf-*.dmg
|
||||
- librewolf-*.dmg.sha256sum
|
||||
- librewolf-*-setup.exe
|
||||
- librewolf-*-setup.exe.sha256sum
|
||||
- librewolf-*-portable.zip
|
||||
- librewolf-*-portable.zip.sha256sum
|
||||
reports:
|
||||
dotenv: variables.env
|
||||
|
||||
|
|
@ -57,91 +84,148 @@ Release:
|
|||
before_script:
|
||||
- apt-get update
|
||||
- apt-get install -y curl
|
||||
- curl -L --output /usr/local/bin/release-cli "https://release-cli-downloads.s3.amazonaws.com/latest/release-cli-linux-amd64"
|
||||
- curl -L --output /usr/local/bin/release-cli
|
||||
"https://release-cli-downloads.s3.amazonaws.com/latest/release-cli-linux-amd64"
|
||||
- chmod +x /usr/local/bin/release-cli
|
||||
script:
|
||||
- |
|
||||
codeberg_release_body=""
|
||||
|
||||
function upload_package() {
|
||||
echo "Uploading $1"
|
||||
curl \
|
||||
--header "JOB-TOKEN: $CI_JOB_TOKEN" \
|
||||
--upload-file "$1" \
|
||||
"$CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$VERSION-$RELEASE/$1"
|
||||
"$CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/$1"
|
||||
codeberg_release_body="${codeberg_release_body}[$1]($CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/$1)\n"
|
||||
}
|
||||
upload_package librewolf-$VERSION-$RELEASE.en-US.debian11.x86_64.deb
|
||||
upload_package librewolf-$VERSION-$RELEASE.en-US.debian11.x86_64.deb.sha256sum
|
||||
upload_package librewolf-$VERSION-$RELEASE.en-US.ubuntu20.x86_64.deb
|
||||
upload_package librewolf-$VERSION-$RELEASE.en-US.ubuntu20.x86_64.deb.sha256sum
|
||||
upload_package librewolf-$VERSION-$RELEASE.en-US.ubuntu21.x86_64.deb
|
||||
upload_package librewolf-$VERSION-$RELEASE.en-US.ubuntu21.x86_64.deb.sha256sum
|
||||
upload_package librewolf-$VERSION-$RELEASE.en-US.mint20.x86_64.deb
|
||||
upload_package librewolf-$VERSION-$RELEASE.en-US.mint20.x86_64.deb.sha256sum
|
||||
upload_package librewolf-$VERSION-$RELEASE.fc34.x86_64.rpm
|
||||
upload_package librewolf-$VERSION-$RELEASE.fc34.x86_64.rpm.sha256sum
|
||||
upload_package librewolf-$VERSION-$RELEASE.fc35.x86_64.rpm
|
||||
upload_package librewolf-$VERSION-$RELEASE.fc35.x86_64.rpm.sha256sum
|
||||
upload_package librewolf-$VERSION-$RELEASE.en-US.mac.x86_64.dmg
|
||||
upload_package librewolf-$VERSION-$RELEASE.en-US.mac.x86_64.dmg.sha256sum
|
||||
upload_package librewolf-$VERSION-$RELEASE.en-US.mac.aarch64.dmg
|
||||
upload_package librewolf-$VERSION-$RELEASE.en-US.mac.aarch64.dmg.sha256sum
|
||||
|
||||
upload_package librewolf-$FILEVER.en-US.debian11.x86_64.deb
|
||||
upload_package librewolf-$FILEVER.en-US.debian11.x86_64.deb.sha256sum
|
||||
upload_package librewolf-$FILEVER.en-US.debian12.x86_64.deb
|
||||
upload_package librewolf-$FILEVER.en-US.debian12.x86_64.deb.sha256sum
|
||||
upload_package librewolf-$FILEVER.en-US.ubuntu20.x86_64.deb
|
||||
upload_package librewolf-$FILEVER.en-US.ubuntu20.x86_64.deb.sha256sum
|
||||
upload_package librewolf-$FILEVER.en-US.ubuntu22.x86_64.deb
|
||||
upload_package librewolf-$FILEVER.en-US.ubuntu22.x86_64.deb.sha256sum
|
||||
upload_package librewolf-$FILEVER.en-US.mint20.x86_64.deb
|
||||
upload_package librewolf-$FILEVER.en-US.mint20.x86_64.deb.sha256sum
|
||||
upload_package librewolf-$FILEVER.en-US.mint21.x86_64.deb
|
||||
upload_package librewolf-$FILEVER.en-US.mint21.x86_64.deb.sha256sum
|
||||
upload_package librewolf-$FILEVER.fc37.x86_64.rpm
|
||||
upload_package librewolf-$FILEVER.fc37.x86_64.rpm.sha256sum
|
||||
upload_package librewolf-$FILEVER.fc38.x86_64.rpm
|
||||
upload_package librewolf-$FILEVER.fc38.x86_64.rpm.sha256sum
|
||||
|
||||
echo "Creating Codeberg release"
|
||||
codeberg_release_body="${codeberg_release_body}\n[View on GitLab](https://gitlab.com/librewolf-community/browser/bsys5/-/releases/$FILEVER)"
|
||||
curl -X 'POST' \
|
||||
"https://codeberg.org/api/v1/repos/librewolf/bsys5/releases?token=$CODEBERG_TOKEN" \
|
||||
-H 'accept: application/json' \
|
||||
-H 'Content-Type: application/json' \
|
||||
-d "{
|
||||
\"name\": \"$FILEVER\",
|
||||
\"tag_name\": \"$FILEVER\",
|
||||
\"body\": \"$codeberg_release_body\"
|
||||
}"
|
||||
- |
|
||||
body=$(cat <<EOF
|
||||
{
|
||||
"token": "$REPO_DEPLOY_TOKEN",
|
||||
"debs": [
|
||||
{
|
||||
"file": "$CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.debian11.x86_64.deb",
|
||||
"distros": ["bullseye"]
|
||||
},
|
||||
{
|
||||
"file": "$CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.debian12.x86_64.deb",
|
||||
"distros": ["bookworm"]
|
||||
},
|
||||
{
|
||||
"file": "$CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.ubuntu20.x86_64.deb",
|
||||
"distros": ["focal"]
|
||||
},
|
||||
{
|
||||
"file": "$CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.ubuntu22.x86_64.deb",
|
||||
"distros": ["jammy"]
|
||||
},
|
||||
{
|
||||
"file": "$CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.mint20.x86_64.deb",
|
||||
"distros": ["uma", "una"]
|
||||
},
|
||||
{
|
||||
"file": "$CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.mint21.x86_64.deb",
|
||||
"distros": ["vanessa", "vera"]
|
||||
}
|
||||
],
|
||||
"rpms": [
|
||||
{
|
||||
"file": "$CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.fc37.x86_64.rpm"
|
||||
},
|
||||
{
|
||||
"file": "$CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.fc38.x86_64.rpm"
|
||||
}
|
||||
]
|
||||
}
|
||||
EOF
|
||||
)
|
||||
|
||||
id=$(curl "https://updaterepos.librewolf.net/job" --request POST --data "$body")
|
||||
|
||||
echo "Submitted update request to LibreWolf Software Repository (https://updaterepos.librewolf.net/job?id=$id)"
|
||||
release:
|
||||
tag_name: "$VERSION-$RELEASE"
|
||||
description: "## LibreWolf bsys5 Release v$VERSION-$RELEASE\n\n- \n\n(Built on GitLab by pipeline [$CI_PIPELINE_ID](https://gitlab.com/librewolf-community/browser/bsys5/-/pipelines/$CI_PIPELINE_ID))"
|
||||
tag_name: "$FILEVER"
|
||||
description:
|
||||
"## LibreWolf bsys5 Release v$FILEVER\n\n- \n\n(Built on GitLab by
|
||||
pipeline
|
||||
[$CI_PIPELINE_ID](https://gitlab.com/librewolf-community/browser/bsys5/-/pipelines/$CI_PIPELINE_ID))"
|
||||
assets:
|
||||
links:
|
||||
- name: Debian 11 (deb)
|
||||
link_type: package
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$VERSION-$RELEASE/librewolf-$VERSION-$RELEASE.en-US.debian11.x86_64.deb
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.debian11.x86_64.deb
|
||||
- name: Debian 11 (sha256sum)
|
||||
link_type: other
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$VERSION-$RELEASE/librewolf-$VERSION-$RELEASE.en-US.debian11.x86_64.deb.sha256sum
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.debian11.x86_64.deb.sha256sum
|
||||
- name: Debian 12 (deb)
|
||||
link_type: package
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.debian12.x86_64.deb
|
||||
- name: Debian 12 (sha256sum)
|
||||
link_type: other
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.debian12.x86_64.deb.sha256sum
|
||||
- name: Ubuntu 20 (deb)
|
||||
link_type: package
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$VERSION-$RELEASE/librewolf-$VERSION-$RELEASE.en-US.ubuntu20.x86_64.deb
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.ubuntu20.x86_64.deb
|
||||
- name: Ubuntu 20 (sha256sum)
|
||||
link_type: other
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$VERSION-$RELEASE/librewolf-$VERSION-$RELEASE.en-US.ubuntu20.x86_64.deb.sha256sum
|
||||
- name: Ubuntu 21 (deb)
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.ubuntu20.x86_64.deb.sha256sum
|
||||
- name: Ubuntu 22 (deb)
|
||||
link_type: package
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$VERSION-$RELEASE/librewolf-$VERSION-$RELEASE.en-US.ubuntu21.x86_64.deb
|
||||
- name: Ubuntu 21 (sha256sum)
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.ubuntu22.x86_64.deb
|
||||
- name: Ubuntu 22 (sha256sum)
|
||||
link_type: other
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$VERSION-$RELEASE/librewolf-$VERSION-$RELEASE.en-US.ubuntu21.x86_64.deb.sha256sum
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.ubuntu22.x86_64.deb.sha256sum
|
||||
- name: Linux Mint 20 (deb)
|
||||
link_type: package
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$VERSION-$RELEASE/librewolf-$VERSION-$RELEASE.en-US.mint20.x86_64.deb
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.mint20.x86_64.deb
|
||||
- name: Linux Mint 20 (sha256sum)
|
||||
link_type: other
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$VERSION-$RELEASE/librewolf-$VERSION-$RELEASE.en-US.mint20.x86_64.deb.sha256sum
|
||||
- name: Fedora 34 (rpm)
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.mint20.x86_64.deb.sha256sum
|
||||
- name: Linux Mint 21 (deb)
|
||||
link_type: package
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$VERSION-$RELEASE/librewolf-$VERSION-$RELEASE.fc34.x86_64.rpm
|
||||
- name: Fedora 34 (sha256sum)
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.mint21.x86_64.deb
|
||||
- name: Linux Mint 21 (sha256sum)
|
||||
link_type: other
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$VERSION-$RELEASE/librewolf-$VERSION-$RELEASE.fc34.x86_64.rpm.sha256sum
|
||||
- name: Fedora 35 (rpm)
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.mint21.x86_64.deb.sha256sum
|
||||
- name: Fedora 37 (rpm)
|
||||
link_type: package
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$VERSION-$RELEASE/librewolf-$VERSION-$RELEASE.fc35.x86_64.rpm
|
||||
- name: Fedora 35 (sha256sum)
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.fc37.x86_64.rpm
|
||||
- name: Fedora 37 (sha256sum)
|
||||
link_type: other
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$VERSION-$RELEASE/librewolf-$VERSION-$RELEASE.fc35.x86_64.rpm.sha256sum
|
||||
- name: macOS x86_64 (dmg)
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.fc37.x86_64.rpm.sha256sum
|
||||
- name: Fedora 38 (rpm)
|
||||
link_type: package
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$VERSION-$RELEASE/librewolf-$VERSION-$RELEASE.en-US.mac.x86_64.dmg
|
||||
- name: macOS x86_64 (sha256sum)
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.fc38.x86_64.rpm
|
||||
- name: Fedora 38 (sha256sum)
|
||||
link_type: other
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$VERSION-$RELEASE/librewolf-$VERSION-$RELEASE.en-US.mac.x86_64.dmg.sha256sum
|
||||
- name: macOS aarch64 (dmg)
|
||||
link_type: package
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$VERSION-$RELEASE/librewolf-$VERSION-$RELEASE.en-US.mac.aarch64.dmg
|
||||
- name: macOS aarch64 (sha256sum)
|
||||
link_type: other
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$VERSION-$RELEASE/librewolf-$VERSION-$RELEASE.en-US.mac.aarch64.dmg.sha256sum
|
||||
|
||||
Update Repositories:
|
||||
stage: deploy
|
||||
image: curlimages/curl
|
||||
needs:
|
||||
- job: "Build"
|
||||
artifacts: true
|
||||
script:
|
||||
- curl https://shorsh.de/update_lw_repos.php?version=$VERSION-$RELEASE&log=true&token=$REPO_DEPLOY_TOKEN
|
||||
url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.fc38.x86_64.rpm.sha256sum
|
||||
|
|
|
|||
3
.gitmodules
vendored
Normal file
3
.gitmodules
vendored
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
[submodule "submodules/windows"]
|
||||
path = submodules/windows
|
||||
url = https://gitlab.com/librewolf-community/browser/windows.git
|
||||
168
Makefile
168
Makefile
|
|
@ -1,8 +1,9 @@
|
|||
.PHONY : help clean veryclean prune docker push rmi build update work docker-debian11 debian11 docker-mint20 mint20 docker-ubuntu20 ubuntu20 docker-ubuntu21 ubuntu21 docker-fedora34 fedora34 docker-fedora35 fedora35 docker-macos-x86_64 macos-x86_64 docker-macos-aarch64 macos-aarch64
|
||||
.PHONY : help clean veryclean prune docker push rmi build update work docker-debian11 debian11 docker-mint20 mint20 docker-mint21 mint21 docker-ubuntu20 ubuntu20 docker-ubuntu21 ubuntu21 docker-ubuntu22 ubuntu22 docker-fedora37 fedora37 docker-fedora38 fedora38 docker-macos-x86_64 macos-x86_64 docker-macos-aarch64 macos-aarch64 docker-tumbleweed tumbleweed tarball docker-dind windows
|
||||
|
||||
version:=$(shell cat version)
|
||||
release:=$(shell cat release)
|
||||
source_release:=$(shell cat source_release)
|
||||
full_version:=$(version)-$(source_release)$(shell [ $(release) -gt 1 ] && echo "-$(release)")
|
||||
|
||||
help :
|
||||
@echo "Use: make [help]"
|
||||
|
|
@ -12,24 +13,22 @@ help :
|
|||
@echo " [update] [prune] - misc."
|
||||
@echo ""
|
||||
@echo "docker targets:"
|
||||
@echo " [docker-debian11]"
|
||||
@echo " [docker-mint20]"
|
||||
@echo " [docker-ubuntu20]"
|
||||
@echo " [docker-ubuntu21]"
|
||||
@echo " [docker-fedora34]"
|
||||
@echo " [docker-fedora35]"
|
||||
@echo " [docker-macos-x86_64]"
|
||||
@echo " [docker-macos-aarch64]"
|
||||
@echo " [docker-debian11], [docker-debian12],[docker-mint20], [docker-mint21]"
|
||||
@echo " [docker-ubuntu20], [docker-ubuntu21], [docker-ubuntu22]"
|
||||
@echo " [docker-fedora37], [docker-fedora38]"
|
||||
@echo " [docker-macos-x86_64], [docker-macos-aarch64]"
|
||||
@echo " [docker-tumbleweed]"
|
||||
@echo " [docker-dind]"
|
||||
@echo " [docker-windows]"
|
||||
@echo ""
|
||||
@echo "build targets:"
|
||||
@echo " [debian11]"
|
||||
@echo " [mint20]"
|
||||
@echo " [ubuntu20]"
|
||||
@echo " [ubuntu21]"
|
||||
@echo " [fedora34]"
|
||||
@echo " [fedora35]"
|
||||
@echo " [macos-x64_64]"
|
||||
@echo " [macos-aarch64]"
|
||||
@echo " [debian11], [debian12], [mint20], [mint21], [ubuntu20], [ubuntu21]"
|
||||
@echo " [ubuntu22]"
|
||||
@echo " [fedora37], [fedora38]"
|
||||
@echo " [macos-x64_64], [macos-aarch64]"
|
||||
@echo " [tumbleweed]"
|
||||
@echo " [windows]"
|
||||
@echo " [tarball]"
|
||||
@echo ""
|
||||
|
||||
|
||||
|
|
@ -45,46 +44,70 @@ veryclean : clean
|
|||
prune :
|
||||
docker system prune --all --force
|
||||
|
||||
docker : docker-debian11 docker-mint20 docker-ubuntu20 docker-ubuntu21 docker-fedora34 docker-fedora35 docker-macos-x86_64 docker-macos-aarch64
|
||||
docker : docker-debian11 docker-debian12 docker-mint20 docker-mint21 docker-ubuntu20 docker-ubuntu21 docker-ubuntu22 docker-fedora34 docker-fedora37 docker-fedora38 docker-tumbleweed docker-macos-x86_64 docker-macos-aarch64 docker-dind
|
||||
|
||||
build :
|
||||
${MAKE} clean
|
||||
${MAKE} debian11
|
||||
${MAKE} clean
|
||||
${MAKE} debian12
|
||||
${MAKE} clean
|
||||
${MAKE} mint20
|
||||
${MAKE} clean
|
||||
${MAKE} mint21
|
||||
${MAKE} clean
|
||||
${MAKE} ubuntu20
|
||||
${MAKE} clean
|
||||
${MAKE} ubuntu21
|
||||
${MAKE} clean
|
||||
${MAKE} ubuntu22
|
||||
${MAKE} clean
|
||||
${MAKE} fedora34
|
||||
${MAKE} clean
|
||||
${MAKE} fedora35
|
||||
${MAKE} fedora37
|
||||
${MAKE} clean
|
||||
${MAKE} fedora38
|
||||
${MAKE} clean
|
||||
${MAKE} tumbleweed
|
||||
${MAKE} clean
|
||||
${MAKE} macos-x86_64
|
||||
${MAKE} clean
|
||||
${MAKE} macos-aarch64
|
||||
${MAKE} clean
|
||||
${MAKE} windows
|
||||
${MAKE} clean
|
||||
|
||||
push :
|
||||
docker push librewolf/bsys5-image-debian11
|
||||
docker push librewolf/bsys5-image-mint20
|
||||
docker push librewolf/bsys5-image-ubuntu20
|
||||
docker push librewolf/bsys5-image-ubuntu21
|
||||
docker push librewolf/bsys5-image-fedora34
|
||||
docker push librewolf/bsys5-image-fedora35
|
||||
docker push librewolf/bsys5-image-macos-x86_64
|
||||
docker push librewolf/bsys5-image-macos-aarch64
|
||||
docker push registry.gitlab.com/librewolf-community/browser/bsys5/debian11
|
||||
docker push registry.gitlab.com/librewolf-community/browser/bsys5/debian12
|
||||
docker push registry.gitlab.com/librewolf-community/browser/bsys5/mint20
|
||||
docker push registry.gitlab.com/librewolf-community/browser/bsys5/mint21
|
||||
docker push registry.gitlab.com/librewolf-community/browser/bsys5/ubuntu20
|
||||
docker push registry.gitlab.com/librewolf-community/browser/bsys5/ubuntu21
|
||||
docker push registry.gitlab.com/librewolf-community/browser/bsys5/ubuntu22
|
||||
docker push registry.gitlab.com/librewolf-community/browser/bsys5/fedora34
|
||||
docker push registry.gitlab.com/librewolf-community/browser/bsys5/fedora37
|
||||
docker push registry.gitlab.com/librewolf-community/browser/bsys5/fedora38
|
||||
docker push registry.gitlab.com/librewolf-community/browser/bsys5/tumbleweed
|
||||
docker push registry.gitlab.com/librewolf-community/browser/bsys5/macos-x86_64
|
||||
docker push registry.gitlab.com/librewolf-community/browser/bsys5/macos-aarch64
|
||||
docker push registry.gitlab.com/librewolf-community/browser/bsys5/dind
|
||||
|
||||
rmi :
|
||||
docker rmi librewolf/bsys5-image-debian11
|
||||
docker rmi librewolf/bsys5-image-mint20
|
||||
docker rmi librewolf/bsys5-image-ubuntu20
|
||||
docker rmi librewolf/bsys5-image-ubuntu21
|
||||
docker rmi librewolf/bsys5-image-fedora34
|
||||
docker rmi librewolf/bsys5-image-fedora35
|
||||
docker rmi librewolf/bsys5-image-macos-x86_64
|
||||
docker rmi librewolf/bsys5-image-macos-aarch64
|
||||
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/debian11
|
||||
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/debian12
|
||||
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/mint20
|
||||
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/mint21
|
||||
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/ubuntu20
|
||||
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/ubuntu21
|
||||
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/ubuntu22
|
||||
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/fedora34
|
||||
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/fedora37
|
||||
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/fedora38
|
||||
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/tumbleweed
|
||||
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/macos-x86_64
|
||||
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/macos-aarch64
|
||||
docker rmi registry.gitlab.com/librewolf-community/browser/bsys5/dind
|
||||
|
||||
update :
|
||||
@wget -q -O version "https://gitlab.com/librewolf-community/browser/source/-/raw/main/version"
|
||||
|
|
@ -99,9 +122,13 @@ update :
|
|||
## setting up the work folder
|
||||
tarball=librewolf-$(version)-$(source_release).source.tar.gz
|
||||
$(tarball) :
|
||||
ifeq ($(SOURCE_URL),)
|
||||
wget -q -O $(tarball) "https://gitlab.com/api/v4/projects/32320088/packages/generic/librewolf-source/$(version)-$(source_release)/$(tarball)"
|
||||
wget -q -O $(tarball).sha256sum "https://gitlab.com/api/v4/projects/32320088/packages/generic/librewolf-source/$(version)-$(source_release)/$(tarball).sha256sum"
|
||||
sha256sum -c $(tarball).sha256sum
|
||||
else
|
||||
wget -q -O $(tarball) "$(SOURCE_URL)"
|
||||
endif
|
||||
work : $(tarball)
|
||||
mkdir work
|
||||
(cd work && tar xf ../$(tarball))
|
||||
|
|
@ -119,37 +146,67 @@ docker-debian11 :
|
|||
debian11 :
|
||||
${MAKE} -f assets/linux.mk distro=debian11 build
|
||||
${MAKE} -f assets/linux.artifacts.mk distro=debian11 artifacts-deb
|
||||
## debian12
|
||||
docker-debian12 :
|
||||
${MAKE} -f assets/linux.mk distro=debian12 "distro_image=debian:bookworm" docker
|
||||
debian12 :
|
||||
${MAKE} -f assets/linux.mk distro=debian12 build
|
||||
${MAKE} -f assets/linux.artifacts.mk distro=debian12 artifacts-deb
|
||||
## mint20
|
||||
docker-mint20 :
|
||||
${MAKE} -f assets/linux.mk distro=mint20 "distro_image=linuxmintd/mint20.2-amd64" docker
|
||||
mint20 :
|
||||
${MAKE} -f assets/linux.mk distro=mint20 build
|
||||
${MAKE} -f assets/linux.artifacts.mk distro=mint20 artifacts-deb
|
||||
## mint21
|
||||
docker-mint21 :
|
||||
${MAKE} -f assets/linux.mk distro=mint21 "distro_image=linuxmintd/mint21-amd64" docker
|
||||
mint21 :
|
||||
${MAKE} -f assets/linux.mk distro=mint21 build
|
||||
${MAKE} -f assets/linux.artifacts.mk distro=mint21 artifacts-deb
|
||||
## ubuntu20
|
||||
docker-ubuntu20 :
|
||||
${MAKE} -f assets/linux.mk distro=ubuntu20 "distro_image=ubuntu:20.04" docker
|
||||
${MAKE} -f assets/linux.mk distro=ubuntu20 "distro_image=ubuntu:focal" docker
|
||||
ubuntu20 :
|
||||
${MAKE} -f assets/linux.mk distro=ubuntu20 build
|
||||
${MAKE} -f assets/linux.artifacts.mk distro=ubuntu20 artifacts-deb
|
||||
## ubuntu21
|
||||
docker-ubuntu21 :
|
||||
${MAKE} -f assets/linux.mk distro=ubuntu21 "distro_image=ubuntu:21.10" docker
|
||||
${MAKE} -f assets/linux.mk distro=ubuntu21 "distro_image=ubuntu:impish" docker
|
||||
ubuntu21 :
|
||||
${MAKE} -f assets/linux.mk distro=ubuntu21 build
|
||||
${MAKE} -f assets/linux.artifacts.mk distro=ubuntu21 artifacts-deb
|
||||
## fedora34
|
||||
docker-fedora34 :
|
||||
${MAKE} -f assets/linux.mk distro=fedora34 "distro_image=fedora:34" docker
|
||||
fedora34 :
|
||||
${MAKE} -f assets/linux.mk distro=fedora34 build
|
||||
${MAKE} -f assets/linux.artifacts.mk fc=fc34 distro=fedora34 artifacts-rpm
|
||||
## fedora35
|
||||
docker-fedora35 :
|
||||
${MAKE} -f assets/linux.mk distro=fedora35 "distro_image=fedora:35" docker
|
||||
fedora35 :
|
||||
${MAKE} -f assets/linux.mk distro=fedora35 build
|
||||
${MAKE} -f assets/linux.artifacts.mk fc=fc35 distro=fedora35 artifacts-rpm
|
||||
## ubuntu22
|
||||
docker-ubuntu22 :
|
||||
${MAKE} -f assets/linux.mk distro=ubuntu22 "distro_image=ubuntu:jammy" docker
|
||||
ubuntu22 :
|
||||
${MAKE} -f assets/linux.mk distro=ubuntu22 build
|
||||
${MAKE} -f assets/linux.artifacts.mk distro=ubuntu22 artifacts-deb
|
||||
## fedora37
|
||||
docker-fedora37 :
|
||||
${MAKE} -f assets/linux.mk distro=fedora37 "distro_image=fedora:37" docker
|
||||
fedora37 :
|
||||
${MAKE} -f assets/linux.mk distro=fedora37 build
|
||||
${MAKE} -f assets/linux.artifacts.mk fc=fc37 distro=fedora37 artifacts-rpm
|
||||
## fedora38
|
||||
docker-fedora38 :
|
||||
${MAKE} -f assets/linux.mk distro=fedora38 "distro_image=fedora:38" docker
|
||||
fedora38 :
|
||||
${MAKE} -f assets/linux.mk distro=fedora38 build
|
||||
${MAKE} -f assets/linux.artifacts.mk fc=fc38 distro=fedora38 artifacts-rpm
|
||||
## opensuse tumbleweed
|
||||
docker-tumbleweed :
|
||||
${MAKE} -f assets/linux.mk distro=tumbleweed "distro_image=opensuse/tumbleweed" docker
|
||||
tumbleweed :
|
||||
${MAKE} -f assets/linux.mk distro=tumbleweed build
|
||||
${MAKE} -f assets/linux.artifacts.mk fc=tumbleweed distro=tumbleweed artifacts-rpm
|
||||
|
||||
## tarball
|
||||
tarball :
|
||||
${MAKE} -f assets/linux.mk distro=ubuntu20 build
|
||||
mv -v librewolf-$(full_version).en-US.ubuntu20-x86_64.tar.bz2 librewolf-$(full_version).en-US.generic-x86_64.tar.bz
|
||||
sha256sum librewolf-$(full_version).en-US.generic-x86_64.tar.bz > librewolf-$(full_version).en-US.generic-x86_64.tar.bz.sha256sum
|
||||
cat librewolf-$(full_version).en-US.generic-x86_64.tar.bz.sha256sum
|
||||
|
||||
#
|
||||
# MacOS
|
||||
|
|
@ -166,3 +223,16 @@ docker-macos-aarch64 :
|
|||
${MAKE} -f assets/macos.mk arch=aarch64 docker
|
||||
macos-aarch64 :
|
||||
${MAKE} -f assets/macos.mk arch=aarch64 build
|
||||
|
||||
## windows
|
||||
docker-windows :
|
||||
${MAKE} -f assets/windows.mk docker
|
||||
windows :
|
||||
${MAKE} -f assets/windows.mk build
|
||||
|
||||
#
|
||||
# Docker in Docker (for GitLab CI)
|
||||
#
|
||||
|
||||
docker-dind :
|
||||
docker build -f assets/dind.Dockerfile -t registry.gitlab.com/librewolf-community/browser/bsys5/dind:latest .
|
||||
|
|
|
|||
37
README.md
37
README.md
|
|
@ -0,0 +1,37 @@
|
|||
# 🔨 bsys5
|
||||
|
||||
This repo contains scripts and assets to build the
|
||||
[LibreWolf source tarball](https://gitlab.com/librewolf-community/browser/source)
|
||||
for various platforms with docker, as well as binary releases produced by those
|
||||
scripts.
|
||||
|
||||
<a href="https://gitlab.com/librewolf-community/browser/bsys5/-/releases"><img src="https://img.shields.io/badge/%F0%9F%93%A5-Go to Releases-blue?style=flat" height="30px"></a>
|
||||
|
||||
## <a id="targets"></a> Supported Targets
|
||||
|
||||
| Platform | x86_64 | aarch64 |
|
||||
| ------------------------ | ----------------------- | ------------------ |
|
||||
| Linux | | |
|
||||
| └─ Debian (deb) | ✅ (debian11,debian12) | - |
|
||||
| └─ Ubuntu (deb) | ✅ (ubuntu20, ubuntu22) | - |
|
||||
| └─ Mint (deb) | ✅ (mint20, mint21) | - |
|
||||
| └─ Fedora (rpm) | ✅ (fedora38, fedora37) | - |
|
||||
| └─ openSUSE (rpm) | ✅ (tumbleweed) | - |
|
||||
| MacOS (dmg) | ✅ (macos-x64_64) | ✅ (macos-aarch64) |
|
||||
| Windows (setup,portable) | ✅ (windows) | - |
|
||||
|
||||
## Running bsys5 Locally
|
||||
|
||||
> Note: Bsys5 only works on Linux. Other platforms are cross-compiled from
|
||||
> Linux.
|
||||
|
||||
To build LibreWolf with bsys5 locally, just install
|
||||
[Docker](https://docs.docker.com/engine/install/) and then clone this
|
||||
repository. Then you can just build the target you want with:
|
||||
|
||||
`make <TARGET>`, for example `make ubuntu22`\
|
||||
(See [the above table](#targets) or `make help` for a list of supported targets.)
|
||||
|
||||
This will pull a prebuilt build environment from
|
||||
[this repository](https://gitlab.com/librewolf-community/browser/bsys5/container_registry).
|
||||
If you also want to build that yourself, run `make docker-<TARGET>` first.
|
||||
9
assets/dind.Dockerfile
Normal file
9
assets/dind.Dockerfile
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
FROM ubuntu:jammy
|
||||
|
||||
RUN apt-get update &&\
|
||||
apt-get install -y ca-certificates curl gnupg lsb-release &&\
|
||||
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg &&\
|
||||
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null &&\
|
||||
apt-get update &&\
|
||||
apt-get install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin make wget lbzip2 &&\
|
||||
apt-get clean
|
||||
|
|
@ -14,23 +14,17 @@ ENV TZ=Europe/Amsterdam
|
|||
|
||||
|
||||
# dependencies needed to run ./mach bootstrap
|
||||
RUN ( apt-get -y update && apt-get -y upgrade && apt-get -y install mercurial python3 python3-dev python3-pip wget ; true)
|
||||
RUN ( dnf -y upgrade && dnf -y install mercurial python3 python3-devel wget rpm-build ; true)
|
||||
|
||||
# setup wasi
|
||||
RUN export target_wasi_location=$HOME/.mozbuild/wrlb/ &&\
|
||||
wget -q https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-$wasi_mainversion/wasi-sdk-$wasi_fullversion-linux.tar.gz &&\
|
||||
tar xf wasi-sdk-$wasi_fullversion-linux.tar.gz &&\
|
||||
mkdir -p $target_wasi_location &&\
|
||||
rm -rf $target_wasi_location/wasi-sysroot &&\
|
||||
cp -r wasi-sdk-$wasi_fullversion/share/wasi-sysroot $target_wasi_location &&\
|
||||
rm -f wasi-sdk-*.tar.gz* && rm -rf wasi-sdk-*
|
||||
RUN ( apt-get -y update && apt-get -y upgrade && apt-get -y install python3 python3-dev python3-pip wget ; apt-get -y install dpkg-sig; true)
|
||||
RUN ( dnf -y upgrade && dnf -y install python3 python3-devel gcc wget rpm-build rpm-sign ; true)
|
||||
RUN ( zypper -n in mercurial python3 python3-pip python3-devel wget rpm-build ; true)
|
||||
|
||||
# run the bootstrap
|
||||
RUN wget -q -O librewolf-$version-$source_release.source.tar.gz https://gitlab.com/librewolf-community/browser/source/-/jobs/artifacts/main/raw/librewolf-$version-$source_release.source.tar.gz?job=Build &&\
|
||||
RUN cd /tmp &&\
|
||||
wget -q -O librewolf-$version-$source_release.source.tar.gz https://gitlab.com/api/v4/projects/32320088/packages/generic/librewolf-source/$version-$source_release/librewolf-$version-$source_release.source.tar.gz &&\
|
||||
tar xf librewolf-$version-$source_release.source.tar.gz &&\
|
||||
cd librewolf-$version-$source_release &&\
|
||||
MOZBUILD_STATE_PATH=$HOME/.mozbuild ./mach --no-interactive bootstrap --application-choice=browser &&\
|
||||
(cd /root/.mozbuild && /tmp/librewolf-$version-$source_release/mach artifact toolchain --from-build sysroot-wasm32-wasi) &&\
|
||||
/root/.cargo/bin/cargo install cbindgen &&\
|
||||
cd .. &&\
|
||||
rm -rf librewolf-$version-$source_release librewolf-$version-$source_release.source.tar.gz
|
||||
|
|
|
|||
|
|
@ -7,64 +7,62 @@
|
|||
version:=$(shell cat version)
|
||||
release:=$(shell cat release)
|
||||
source_release:=$(shell cat source_release)
|
||||
full_version:=$(version)-$(source_release)$(shell [ $(release) -gt 1 ] && echo "-$(release)")
|
||||
|
||||
#use_docker=true
|
||||
ifeq ($(use_docker),)
|
||||
use_docker:=true
|
||||
endif
|
||||
|
||||
infile=librewolf-$(version)-$(release).en-US.$(distro)-x86_64.tar.bz2
|
||||
infile=librewolf-$(full_version).en-US.$(distro)-x86_64.tar.bz2
|
||||
|
||||
#
|
||||
# Debian based:
|
||||
#
|
||||
|
||||
librewolf-$(version)-$(release).en-US.$(distro).x86_64.deb : $(infile)
|
||||
librewolf-$(full_version).en-US.$(distro).x86_64.deb : $(infile)
|
||||
mkdir -p work
|
||||
(cd work && tar xf ../$<)
|
||||
cp -v assets/linux.build-deb.sh work/
|
||||
(cd work && sed "s/MYDIR/\/usr\/share\/librewolf/g" < ../assets/linux.librewolf.desktop.in > start-librewolf.desktop)
|
||||
if [ $(use_docker) = true ]; then \
|
||||
docker run --rm -v $(shell pwd)/work:/work:rw librewolf/bsys5-image-$(distro) sh -c "bash linux.build-deb.sh $(version) $(release)" ; \
|
||||
else \
|
||||
(cd work && bash linux.build-deb.sh $(version) $(release)) ; \
|
||||
fi
|
||||
[ "$(SIGNING_KEY)" != "" ] && cp -v $(SIGNING_KEY) work/pk.asc ; true
|
||||
(cd work && sed "s/MYDIR/\/usr\/share\/librewolf/g" < ../assets/linux.librewolf.desktop.in > librewolf.desktop)
|
||||
ifeq ($(use_docker),false)
|
||||
(cd work && bash linux.build-deb.sh $(full_version))
|
||||
else
|
||||
docker run --rm -v $(shell pwd)/work:/work:rw registry.gitlab.com/librewolf-community/browser/bsys5/$(distro) sh -c "bash linux.build-deb.sh $(full_version)"
|
||||
endif
|
||||
cp -v work/librewolf.deb $@
|
||||
sha256sum $@ > $@.sha256sum
|
||||
cat $@.sha256sum
|
||||
|
||||
artifacts-deb : $(infile) $(infile).sha256sum
|
||||
sha256sum -c $(infile).sha256sum
|
||||
${MAKE} -f assets/linux.artifacts.mk distro=$(distro) librewolf-$(version)-$(release).en-US.$(distro).x86_64.deb
|
||||
${MAKE} -f assets/linux.artifacts.mk distro=$(distro) librewolf-$(full_version).en-US.$(distro).x86_64.deb
|
||||
|
||||
#
|
||||
# RPM Based:
|
||||
#
|
||||
|
||||
librewolf-$(version)-$(release).$(fc).x86_64.rpm : $(infile)
|
||||
librewolf-$(full_version).$(fc).x86_64.rpm : $(infile)
|
||||
mkdir -p work
|
||||
(cd work && tar xf ../$<)
|
||||
cp -v assets/linux.build-rpm.sh work
|
||||
cp -v version work
|
||||
cp -v release work
|
||||
cp -v source_release work
|
||||
cp -v assets/linux.librewolf.spec work/librewolf.spec
|
||||
cp -v assets/linux.librewolf.desktop.in work/librewolf/start-librewolf.desktop.in
|
||||
cp -v assets/linux.librewolf.desktop.in work/librewolf/librewolf.desktop.in
|
||||
cp -v assets/linux.librewolf.ico work/librewolf/librewolf.ico
|
||||
[ "$(SIGNING_KEY)" != "" ] && cp -v $(SIGNING_KEY) work/pk.asc ; true
|
||||
rm -f work/librewolf/browser/features/proxy-failover@mozilla.com.xpi
|
||||
rm -f work/librewolf/pingsender
|
||||
rm -f work/librewolf/precomplete
|
||||
rm -f work/librewolf/removed-files
|
||||
if [ $(use_docker) = true ]; then \
|
||||
docker run --rm -v $(shell pwd)/work:/work:rw librewolf/bsys5-image-$(distro) sh -c "bash linux.build-rpm.sh $(version) $(release)" ; \
|
||||
cp -v work/$@ $@ ; \
|
||||
else \
|
||||
(cp -r work / && cd work && bash linux.build-rpm.sh $(version) $(release)) ; \
|
||||
cp -v /work/$@ $@ ; \
|
||||
fi
|
||||
ifeq ($(use_docker),false)
|
||||
(cp -r work / && cd work && bash linux.build-rpm.sh $(fc))
|
||||
cp -v /work/$@ $@
|
||||
else
|
||||
docker run --rm -v $(shell pwd)/work:/work:rw registry.gitlab.com/librewolf-community/browser/bsys5/$(distro) sh -c "bash linux.build-rpm.sh $(fc)"
|
||||
cp -v work/$@ $@
|
||||
endif
|
||||
sha256sum $@ > $@.sha256sum
|
||||
cat $@.sha256sum
|
||||
|
||||
artifacts-rpm : $(infile) $(infile).sha256sum
|
||||
sha256sum -c $(infile).sha256sum
|
||||
${MAKE} -f assets/linux.artifacts.mk fc=$(fc) distro=$(distro) librewolf-$(version)-$(release).$(fc).x86_64.rpm
|
||||
|
||||
${MAKE} -f assets/linux.artifacts.mk fc=$(fc) distro=$(distro) librewolf-$(full_version).$(fc).x86_64.rpm
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ cd librewolf/DEBIAN
|
|||
cat <<EOF >control
|
||||
Architecture: all
|
||||
Build-Depends: inkscape, librsvg2-bin
|
||||
Depends: lsb-release, libasound2 (>= 1.0.16), libatk1.0-0 (>= 1.12.4), libc6 (>= 2.31), libcairo-gobject2 (>= 1.10.0), libcairo2 (>= 1.10.0), libdbus-1-3 (>= 1.9.14), libdbus-glib-1-2 (>= 0.78), libfontconfig1 (>= 2.12.6), libfreetype6 (>= 2.10.1), libgcc-s1 (>= 3.3), libgdk-pixbuf-2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.42), libgtk-3-0 (>= 3.14), libharfbuzz0b (>= 0.6.0), libpango-1.0-0 (>= 1.14.0), libpangocairo-1.0-0 (>= 1.14.0), libstdc++6 (>= 10), libx11-6, libx11-xcb1 (>= 2:1.7.2), libxcb-shm0, libxcb1, libxcomposite1 (>= 1:0.4.5), libxcursor1 (>> 1.1.2), libxdamage1 (>= 1:1.1), libxext6, libxfixes3, libxi6, libxrandr2 (>= 2:1.4.0), libxrender1, libxtst6
|
||||
Depends: lsb-release, libasound2 (>= 1.0.16), libatk1.0-0 (>= 1.12.4), libc6 (>= 2.31), libcairo-gobject2 (>= 1.10.0), libcairo2 (>= 1.10.0), libdbus-1-3 (>= 1.9.14), libdbus-glib-1-2 (>= 0.78), libfontconfig1 (>= 2.12.6), libfreetype6 (>= 2.10.1), libgcc-s1 (>= 3.3), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.42), libgtk-3-0 (>= 3.14), libharfbuzz0b (>= 0.6.0), libpango-1.0-0 (>= 1.14.0), libpangocairo-1.0-0 (>= 1.14.0), libstdc++6 (>= 10), libx11-6, libx11-xcb1 (>= 2:1.6.9), libxcb-shm0, libxcb1, libxcomposite1 (>= 1:0.4.5), libxcursor1 (>> 1.1.2), libxdamage1 (>= 1:1.1), libxext6, libxfixes3, libxi6, libxrandr2 (>= 2:1.4.0), libxrender1, libxtst6
|
||||
Recommends: libcanberra0, libdbusmenu-glib4, libdbusmenu-gtk3-4
|
||||
Suggests: fonts-lyx
|
||||
Description: The Librewolf Browser
|
||||
|
|
@ -20,7 +20,7 @@ Priority: optional
|
|||
Provides: gnome-www-browser, www-browser, x-www-browser
|
||||
Section: web
|
||||
EOF
|
||||
echo "Version: $1-$2" >>control
|
||||
echo "Version: $1" >>control
|
||||
cd ..
|
||||
|
||||
mkdir -p usr/share/librewolf
|
||||
|
|
@ -34,13 +34,25 @@ cd ../..
|
|||
|
||||
# add the application icon
|
||||
mkdir -p usr/share/applications
|
||||
mkdir -p usr/share/icons
|
||||
cp -v usr/share/librewolf/browser/chrome/icons/default/default64.png usr/share/icons/librewolf.png
|
||||
cp -v ../start-librewolf.desktop usr/share/applications/start-librewolf.desktop
|
||||
mkdir -p usr/share/icons/hicolor/16x16/apps
|
||||
mkdir -p usr/share/icons/hicolor/32x32/apps
|
||||
mkdir -p usr/share/icons/hicolor/64x64/apps
|
||||
mkdir -p usr/share/icons/hicolor/128x128/apps
|
||||
cp -v usr/share/librewolf/browser/chrome/icons/default/default16.png usr/share/icons/hicolor/16x16/apps/librewolf.png
|
||||
cp -v usr/share/librewolf/browser/chrome/icons/default/default32.png usr/share/icons/hicolor/32x32/apps/librewolf.png
|
||||
cp -v usr/share/librewolf/browser/chrome/icons/default/default64.png usr/share/icons/hicolor/64x64/apps/librewolf.png
|
||||
cp -v usr/share/librewolf/browser/chrome/icons/default/default128.png usr/share/icons/hicolor/128x128/apps/librewolf.png
|
||||
cp -v ../librewolf.desktop usr/share/applications/librewolf.desktop
|
||||
|
||||
cd ..
|
||||
dpkg-deb --build librewolf
|
||||
|
||||
# Sign the deb file if private key is provided and we have dpkg-sig available
|
||||
if [[ -f pk.asc ]] && command -v dpkg-sig &>/dev/null; then
|
||||
gpg --import pk.asc
|
||||
dpkg-sig --sign builder librewolf.deb
|
||||
fi
|
||||
|
||||
echo ""
|
||||
ls -lh librewolf.deb
|
||||
exit 0
|
||||
|
|
|
|||
|
|
@ -1,5 +1,15 @@
|
|||
set -e
|
||||
|
||||
if [[ -f pk.asc ]]; then
|
||||
echo "--- [debug] Importing private key..."
|
||||
gpg --import pk.asc
|
||||
cat >>~/.rpmmacros <<EOF
|
||||
%_signature gpg
|
||||
%_gpg_name LibreWolf Maintainers
|
||||
EOF
|
||||
signing="true"
|
||||
fi
|
||||
|
||||
rm -rf /WORK
|
||||
mkdir /WORK
|
||||
cd /WORK
|
||||
|
|
@ -8,10 +18,17 @@ mkdir /artifacts
|
|||
|
||||
version=$(cat /work/version)
|
||||
release=$(cat /work/release)
|
||||
source_release=$(cat /work/source_release)
|
||||
full_release="$source_release$(if [ $release -gt 1 ]; then echo ".$release"; fi)"
|
||||
full_version="$version-$source_release$(if [ $release -gt 1 ]; then echo "-$release"; fi)"
|
||||
fc=$1
|
||||
|
||||
echo '---'
|
||||
echo "--- LibreWolf version file is: $version"
|
||||
echo "--- LibreWolf release is: $release"
|
||||
echo "--- LibreWolf bsys5 release is: $release"
|
||||
echo "--- LibreWolf source release is: $source_release"
|
||||
echo "--- LibreWolf fedora release is: $full_release"
|
||||
echo "--- LibreWolf full version is: $full_version"
|
||||
echo '---'
|
||||
echo '--- Contents of /artifacts folder:'
|
||||
ls -la /artifacts
|
||||
|
|
@ -20,18 +37,18 @@ echo '--- Contents of /WORK folder:'
|
|||
ls -la /WORK
|
||||
echo '---'
|
||||
|
||||
|
||||
|
||||
|
||||
rm -rf rpmbuild
|
||||
mkdir -p rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
|
||||
sed "s/__VERSION__/$version/g" < /work/librewolf.spec > /work/tmp.spec
|
||||
sed "s/__RELEASE__/$release/g" < /work/tmp.spec > rpmbuild/SPECS/librewolf.spec
|
||||
rm -rf /usr/src && ln -sv /WORK /usr/src # Required for openSUSE
|
||||
sed "s/__VERSION__/$version/g" </work/librewolf.spec >/work/tmp.spec
|
||||
sed "s/__RELEASE__/$full_release/g" </work/tmp.spec >rpmbuild/SPECS/librewolf.spec
|
||||
|
||||
# fix: remove some tool binaries we don't want
|
||||
rm -f /work/librewolf/{glxtest,vaapitest}
|
||||
|
||||
# copy in the librewolf assets
|
||||
cp -rv /work/librewolf rpmbuild/SOURCES
|
||||
|
||||
|
||||
cd rpmbuild/SOURCES
|
||||
|
||||
mkdir -p librewolf-$version/usr/share/librewolf
|
||||
|
|
@ -45,10 +62,15 @@ cd ../../..
|
|||
|
||||
# Application icon
|
||||
mkdir -p librewolf-$version/usr/share/applications
|
||||
mkdir -p librewolf-$version/usr/share/icons
|
||||
cp -v librewolf-$version/usr/share/librewolf/browser/chrome/icons/default/default64.png librewolf-$version/usr/share/icons/librewolf.png
|
||||
sed "s/MYDIR/\/usr\/share\/librewolf/g" < /work/librewolf/start-librewolf.desktop.in > librewolf-$version/usr/share/applications/librewolf.desktop
|
||||
|
||||
mkdir -p librewolf-$version/usr/share/icons/hicolor/16x16/apps
|
||||
mkdir -p librewolf-$version/usr/share/icons/hicolor/32x32/apps
|
||||
mkdir -p librewolf-$version/usr/share/icons/hicolor/64x64/apps
|
||||
mkdir -p librewolf-$version/usr/share/icons/hicolor/128x128/apps
|
||||
cp -v librewolf-$version/usr/share/librewolf/browser/chrome/icons/default/default16.png librewolf-$version/usr/share/icons/hicolor/16x16/apps/librewolf.png
|
||||
cp -v librewolf-$version/usr/share/librewolf/browser/chrome/icons/default/default32.png librewolf-$version/usr/share/icons/hicolor/32x32/apps/librewolf.png
|
||||
cp -v librewolf-$version/usr/share/librewolf/browser/chrome/icons/default/default64.png librewolf-$version/usr/share/icons/hicolor/64x64/apps/librewolf.png
|
||||
cp -v librewolf-$version/usr/share/librewolf/browser/chrome/icons/default/default128.png librewolf-$version/usr/share/icons/hicolor/128x128/apps/librewolf.png
|
||||
sed "s/MYDIR/\/usr\/share\/librewolf/g" </work/librewolf/librewolf.desktop.in >librewolf-$version/usr/share/applications/librewolf.desktop
|
||||
|
||||
tar cvfz lw.tar.gz librewolf-$version
|
||||
# todo perhaps: rm -rf librwolf-$version
|
||||
|
|
@ -59,13 +81,15 @@ rm -rf $HOME/rpmbuild
|
|||
cp -rv rpmbuild $HOME
|
||||
|
||||
# Build the package!
|
||||
echo '---'
|
||||
echo "[debug] Running rpmbuild.."
|
||||
echo '---'
|
||||
|
||||
echo "--- [debug] Running rpmbuild..."
|
||||
rpmbuild -v -bb $(pwd)/rpmbuild/SPECS/librewolf.spec
|
||||
|
||||
echo '--- [debug] Copying output files to /artifacts'
|
||||
|
||||
|
||||
#Wrote: /root/rpmbuild/RPMS/x86_64/librewolf-94.0.2-1.fc35.x86_64.rpm
|
||||
cp -v ~/rpmbuild/RPMS/x86_64/librewolf-*.rpm /work
|
||||
cp -v ~/rpmbuild/RPMS/x86_64/librewolf-*.rpm /work/librewolf-$full_version.$fc.x86_64.rpm
|
||||
|
||||
if [[ "$signing" == "true" ]]; then
|
||||
echo '--- [debug] Signing the RPM'
|
||||
export GPG_TTY=$(tty)
|
||||
rpm --addsign /work/librewolf-*.rpm
|
||||
fi
|
||||
|
|
|
|||
|
|
@ -10,9 +10,9 @@ Type=Application
|
|||
MimeType=application/json;application/pdf;application/rdf+xml;application/rss+xml;application/xhtml+xml;application/xhtml_xml;application/xml;image/gif;image/jpeg;image/png;image/webp;text/html;text/xml;x-scheme-handler/http;x-scheme-handler/https;
|
||||
Comment=LibreWolf Browser
|
||||
Categories=Network;WebBrowser;Security;
|
||||
StartupWMClass=LibreWolf
|
||||
StartupWMClass=librewolf-default
|
||||
Exec=MYDIR/librewolf %u
|
||||
Icon=MYDIR/browser/chrome/icons/default/default64.png
|
||||
Icon=librewolf
|
||||
|
||||
Actions=new-window;new-private-window;safe-mode;preferences;
|
||||
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ Summary: The LibreWolf browser
|
|||
License: MPL
|
||||
URL: https://librewolf-community.gitlab.io/
|
||||
Source0: lw.tar.gz
|
||||
Distribution: %(source /etc/os-release && echo $PRETTY_NAME)
|
||||
#BuildRequires:
|
||||
#Requires:
|
||||
%description
|
||||
|
|
@ -21,7 +22,10 @@ cp -rv * "$RPM_BUILD_ROOT"
|
|||
%files
|
||||
/usr/bin/librewolf
|
||||
/usr/share/applications/librewolf.desktop
|
||||
/usr/share/icons/librewolf.png
|
||||
/usr/share/icons/hicolor/16x16/apps/librewolf.png
|
||||
/usr/share/icons/hicolor/32x32/apps/librewolf.png
|
||||
/usr/share/icons/hicolor/64x64/apps/librewolf.png
|
||||
/usr/share/icons/hicolor/128x128/apps/librewolf.png
|
||||
/usr/share/librewolf/application.ini
|
||||
/usr/share/librewolf/browser/chrome/icons/default/default128.png
|
||||
/usr/share/librewolf/browser/chrome/icons/default/default16.png
|
||||
|
|
@ -57,6 +61,7 @@ cp -rv * "$RPM_BUILD_ROOT"
|
|||
/usr/share/librewolf/librewolf
|
||||
/usr/share/librewolf/librewolf-bin
|
||||
/usr/share/librewolf/librewolf.cfg
|
||||
/usr/share/librewolf/librewolf.desktop.in
|
||||
/usr/share/librewolf/librewolf.ico
|
||||
/usr/share/librewolf/libsmime3.so
|
||||
/usr/share/librewolf/libsoftokn3.so
|
||||
|
|
@ -65,5 +70,3 @@ cp -rv * "$RPM_BUILD_ROOT"
|
|||
/usr/share/librewolf/omni.ja
|
||||
/usr/share/librewolf/platform.ini
|
||||
/usr/share/librewolf/plugin-container
|
||||
/usr/share/librewolf/start-librewolf.desktop.in
|
||||
|
||||
|
|
|
|||
|
|
@ -7,26 +7,25 @@
|
|||
version:=$(shell cat version)
|
||||
release:=$(shell cat release)
|
||||
source_release:=$(shell cat source_release)
|
||||
full_version:=$(version)-$(source_release)$(shell [ $(release) -gt 1 ] && echo "-$(release)")
|
||||
|
||||
#use_docker=true
|
||||
ifeq ($(use_docker),)
|
||||
use_docker:=true
|
||||
endif
|
||||
|
||||
outfile=librewolf-$(version)-$(release).en-US.$(distro)-x86_64.tar.bz2
|
||||
outfile=librewolf-$(full_version).en-US.$(distro)-x86_64.tar.bz2
|
||||
|
||||
docker :
|
||||
docker build --build-arg "distro=$(distro_image)" --build-arg "version=$(version)" --build-arg "source_release=$(source_release)" -t librewolf/bsys5-image-$(distro) - < assets/linux.Dockerfile
|
||||
docker build --build-arg "distro=$(distro_image)" --build-arg "version=$(version)" --build-arg "source_release=$(source_release)" -t registry.gitlab.com/librewolf-community/browser/bsys5/$(distro):latest - < assets/linux.Dockerfile
|
||||
|
||||
build : $(outfile) $(outfile).sha256sum
|
||||
|
||||
$(outfile) $(outfile).sha256sum :
|
||||
$(outfile) :
|
||||
${MAKE} work
|
||||
if [ $(use_docker) = true ]; then \
|
||||
docker run --rm -v $(shell pwd)/work:/work:rw librewolf/bsys5-image-$(distro) sh -c "cd /work/librewolf-$(version)-$(source_release) && ./mach build && ./mach package" ; \
|
||||
else \
|
||||
(cd work/librewolf-$(version)-$(source_release) && ./mach build && ./mach package) ; \
|
||||
fi
|
||||
if [ "$(distro)" != "tumbleweed" ]; then ln -sfv ./lw/mozconfig.new.without-bootstrap work/librewolf-$(version)-$(source_release)/mozconfig; fi
|
||||
ifeq ($(use_docker),false)
|
||||
(cd work/librewolf-$(version)-$(source_release) && ./mach build && echo 'Packaging... (output hidden)' && cat browser/locales/shipped-locales | xargs ./mach package-multi-locale --locales >/dev/null)
|
||||
else
|
||||
docker run --rm -v $(shell pwd)/work:/work:rw registry.gitlab.com/librewolf-community/browser/bsys5/$(distro) sh -c "cd /work/librewolf-$(version)-$(source_release) && ./mach build && echo 'Packaging... (output hidden)' && cat browser/locales/shipped-locales | xargs ./mach package-multi-locale --locales >/dev/null"
|
||||
endif
|
||||
cp -v work/librewolf-$(version)-$(source_release)/obj-x86_64-pc-linux-gnu/dist/librewolf-$(version)-$(source_release).en-US.linux-x86_64.tar.bz2 $(outfile)
|
||||
|
||||
$(outfile).sha256sum : $(outfile)
|
||||
sha256sum $(outfile) > $(outfile).sha256sum
|
||||
cat $(outfile).sha256sum
|
||||
|
|
|
|||
|
|
@ -16,45 +16,39 @@ ENV wasi_mainversion 14
|
|||
# dependencies needed to run ./mach bootstrap
|
||||
RUN apt-get -y update && apt-get -y upgrade && apt-get -y install mercurial python3 python3-dev python3-pip wget build-essential libpython3-dev m4 unzip uuid zip libasound2-dev libcurl4-openssl-dev libdbus-1-dev libdbus-glib-1-dev libdrm-dev libgtk-3-dev libpulse-dev libx11-xcb-dev libxt-dev xvfb rsync
|
||||
|
||||
# setup wasi
|
||||
RUN export target_wasi_location=$HOME/.mozbuild/wrlb/ &&\
|
||||
wget -q https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-$wasi_mainversion/wasi-sdk-$wasi_fullversion-linux.tar.gz &&\
|
||||
tar xf wasi-sdk-$wasi_fullversion-linux.tar.gz &&\
|
||||
mkdir -p $target_wasi_location &&\
|
||||
rm -rf $target_wasi_location/wasi-sysroot &&\
|
||||
cp -r wasi-sdk-$wasi_fullversion/share/wasi-sysroot $target_wasi_location &&\
|
||||
rm -f wasi-sdk-*.tar.gz* && rm -rf wasi-sdk-*
|
||||
|
||||
# setup osx sdk
|
||||
RUN mkdir -p /osx-cross/MacOSX-SDKs &&\
|
||||
cd /osx-cross/MacOSX-SDKs &&\
|
||||
wget -q "https://github.com/phracker/MacOSX-SDKs/releases/download/11.3/MacOSX11.3.sdk.tar.xz" &&\
|
||||
tar xf MacOSX11.3.sdk.tar.xz &&\
|
||||
rm -f MacOSX11.3.sdk.tar.xz
|
||||
#
|
||||
# Setup MacOSX SDK v13.0
|
||||
RUN mkdir -p /osx-cross/MacOSX-SDKs && cd /osx-cross/MacOSX-SDKs && wget https://files.stanzabird.nl/MacOSX13.0.sdk.zip && unzip MacOSX13.0.sdk.zip && rm MacOSX13.0.sdk.zip
|
||||
|
||||
|
||||
# run the bootstrap
|
||||
RUN wget -q -O librewolf-$version-$source_release.source.tar.gz https://gitlab.com/librewolf-community/browser/source/-/jobs/artifacts/main/raw/librewolf-$version-$source_release.source.tar.gz?job=Build &&\
|
||||
tar xf librewolf-$version-$source_release.source.tar.gz &&\
|
||||
cd librewolf-$version-$source_release &&\
|
||||
echo ac_add_options --target=$arch-apple-darwin > mozconfig &&\
|
||||
echo ac_add_options --enable-bootstrap >> mozconfig &&\
|
||||
echo ac_add_options --with-macos-sdk=/osx-cross/MacOSX-SDKs/MacOSX11.3.sdk >> mozconfig &&\
|
||||
MOZBUILD_STATE_PATH=$HOME/.mozbuild ./mach --no-interactive bootstrap --application-choice=browser &&\
|
||||
./mach artifact toolchain --from-build linux64-libdmg &&\
|
||||
./mach artifact toolchain --from-build linux64-cctools-port &&\
|
||||
./mach artifact toolchain --from-build linux64-hfsplus &&\
|
||||
./mach artifact toolchain --from-build linux64-binutils &&\
|
||||
./mach artifact toolchain --from-build linux64-clang-macosx-cross &&\
|
||||
/root/.cargo/bin/cargo install cbindgen &&\
|
||||
/root/.cargo/bin/rustup target add $arch-apple-darwin &&\
|
||||
cp -r binutils /root/.mozbuild &&\
|
||||
cp -r cctools /root/.mozbuild &&\
|
||||
cp -r clang /root/.mozbuild &&\
|
||||
cp -r dmg /root/.mozbuild &&\
|
||||
cp -r hfsplus-tools /root/.mozbuild &&\
|
||||
pip install testresources pycairo &&\
|
||||
cd .. &&\
|
||||
rm -rf librewolf-$version-$source_release librewolf-$version-$source_release.source.tar.gz
|
||||
RUN wget -q -O librewolf-$version-$source_release.source.tar.gz https://gitlab.com/api/v4/projects/32320088/packages/generic/librewolf-source/$version-$source_release/librewolf-$version-$source_release.source.tar.gz
|
||||
RUN tar xf librewolf-$version-$source_release.source.tar.gz
|
||||
WORKDIR librewolf-$version-$source_release
|
||||
|
||||
RUN echo ac_add_options --target=$arch-apple-darwin > mozconfig
|
||||
RUN echo ac_add_options --enable-bootstrap >> mozconfig
|
||||
RUN echo ac_add_options --with-macos-sdk=/osx-cross/MacOSX-SDKs/MacOSX13.0.sdk >> mozconfig
|
||||
|
||||
RUN MOZBUILD_STATE_PATH=$HOME/.mozbuild ./mach --no-interactive bootstrap --application-choice=browser
|
||||
RUN ./mach artifact toolchain --from-build linux64-libdmg
|
||||
RUN ./mach artifact toolchain --from-build linux64-cctools-port
|
||||
RUN ./mach artifact toolchain --from-build linux64-hfsplus
|
||||
RUN ./mach artifact toolchain --from-build linux64-binutils
|
||||
RUN ./mach artifact toolchain --from-build sysroot-wasm32-wasi
|
||||
## RUN ./mach artifact toolchain --from-build linux64-clang-macosx-cross
|
||||
RUN /root/.cargo/bin/cargo install cbindgen
|
||||
RUN /root/.cargo/bin/rustup target add $arch-apple-darwin
|
||||
RUN cp -r binutils /root/.mozbuild
|
||||
RUN cp -r cctools /root/.mozbuild
|
||||
RUN cp -r sysroot-wasm32-wasi /root/.mozbuild
|
||||
## RUN cp -r clang /root/.mozbuild
|
||||
RUN cp -r dmg /root/.mozbuild
|
||||
# RUN cp -r hfsplus-tools /root/.mozbuild
|
||||
RUN pip install testresources pycairo
|
||||
WORKDIR ..
|
||||
RUN rm -rf librewolf-$version-$source_release librewolf-$version-$source_release.source.tar.gz
|
||||
|
||||
# our work happens here, on the host filesystem.
|
||||
WORKDIR /work
|
||||
|
|
|
|||
|
|
@ -6,27 +6,25 @@
|
|||
version:=$(shell cat version)
|
||||
release:=$(shell cat release)
|
||||
source_release:=$(shell cat source_release)
|
||||
full_version:=$(version)-$(source_release)$(shell [ $(release) -gt 1 ] && echo "-$(release)")
|
||||
|
||||
#use_docker=true
|
||||
ifeq ($(use_docker),)
|
||||
use_docker:=true
|
||||
endif
|
||||
|
||||
outfile=librewolf-$(version)-$(release).en-US.mac.$(arch).dmg
|
||||
outfile=librewolf-$(full_version).en-US.mac.$(arch).dmg
|
||||
|
||||
docker :
|
||||
docker build --build-arg "arch=$(arch)" --build-arg "version=$(version)" --build-arg "source_release=$(source_release)" -t librewolf/bsys5-image-macos-$(arch) - < assets/macos.Dockerfile
|
||||
docker build --build-arg "arch=$(arch)" --build-arg "version=$(version)" --build-arg "source_release=$(source_release)" -t registry.gitlab.com/librewolf-community/browser/bsys5/macos-$(arch) - < assets/macos.Dockerfile
|
||||
|
||||
build : $(outfile) $(outfile).sha256sum
|
||||
|
||||
$(outfile) $(outfile).sha256sum :
|
||||
$(outfile) :
|
||||
${MAKE} work
|
||||
sed "s/_ARCH_/$(arch)/g" < assets/macos.mozconfig > work/librewolf-$(version)-$(source_release)/mozconfig
|
||||
if [ $(use_docker) = true ]; then \
|
||||
docker run --rm -v $(shell pwd)/work:/work:rw librewolf/bsys5-image-macos-$(arch) sh -c "cd /work/librewolf-$(version)-$(source_release) && ./mach build && ./mach package" ; \
|
||||
else \
|
||||
(cd work/librewolf-$(version)-$(source_release) && ./mach build && ./mach package) ; \
|
||||
fi
|
||||
ifeq ($(use_docker),false)
|
||||
(cd work/librewolf-$(version)-$(source_release) && ./mach build && echo 'Packaging... (output hidden)' && cat browser/locales/shipped-locales | xargs ./mach package-multi-locale --locales >/dev/null)
|
||||
else
|
||||
docker run --rm -v $(shell pwd)/work:/work:rw registry.gitlab.com/librewolf-community/browser/bsys5/macos-$(arch) sh -c "cd /work/librewolf-$(version)-$(source_release) && ./mach build && echo 'Packaging... (output hidden)' && cat browser/locales/shipped-locales | xargs ./mach package-multi-locale --locales >/dev/null"
|
||||
endif
|
||||
cp -v work/librewolf-$(version)-$(source_release)/obj-$(arch)-apple-darwin/dist/librewolf-$(version)-$(source_release).en-US.mac.dmg $(outfile)
|
||||
|
||||
$(outfile).sha256sum : $(outfile)
|
||||
sha256sum $(outfile) > $(outfile).sha256sum
|
||||
cat $(outfile).sha256sum
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ ac_add_options --enable-application=browser
|
|||
|
||||
# for crosscompiling...
|
||||
ac_add_options --target=_ARCH_-apple-darwin
|
||||
ac_add_options --with-macos-sdk=/osx-cross/MacOSX-SDKs/MacOSX11.3.sdk
|
||||
ac_add_options --with-macos-sdk=/osx-cross/MacOSX-SDKs/MacOSX13.0.sdk
|
||||
|
||||
CROSS_BUILD=1
|
||||
export CROSS=/root/.mozbuild
|
||||
|
|
@ -22,7 +22,7 @@ export HOST_CC="$CROSS/clang/bin/clang"
|
|||
export HOST_CXX="$CROSS/clang/bin/clang++"
|
||||
|
||||
# These are needed for packaging.
|
||||
export MKFSHFS="$CROSS/hfsplus-tools/newfs_hfs"
|
||||
# export MKFSHFS="$CROSS/hfsplus-tools/newfs_hfs"
|
||||
export DMG_TOOL="$CROSS/dmg/dmg"
|
||||
export HFS_TOOL="$CROSS/dmg/hfsplus"
|
||||
|
||||
|
|
@ -47,13 +47,11 @@ ac_add_options --with-branding=browser/branding/librewolf
|
|||
|
||||
ac_add_options --with-unsigned-addon-scopes=app,system
|
||||
|
||||
ac_add_options --with-l10n-base=$PWD/browser/locales/l10n
|
||||
|
||||
export MOZ_REQUIRE_SIGNING=
|
||||
|
||||
mk_add_options MOZ_CRASHREPORTER=0
|
||||
mk_add_options MOZ_DATA_REPORTING=0
|
||||
mk_add_options MOZ_SERVICES_HEALTHREPORT=0
|
||||
mk_add_options MOZ_TELEMETRY_REPORTING=0
|
||||
|
||||
# wasi: we ask maintainers to all use this as wasi sysroot..
|
||||
# There is a script 'setup-wasi-linux.sh' that attempts to download the wasi sdk and place it into the location pointed to below.
|
||||
ac_add_options --with-wasi-sysroot=/root/.mozbuild/wrlb/wasi-sysroot
|
||||
|
|
|
|||
8
assets/windows.Dockerfile
Normal file
8
assets/windows.Dockerfile
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
FROM ubuntu:latest
|
||||
RUN apt-get -y update && apt-get -y upgrade && apt-get -y install bash git wget build-essential zip
|
||||
RUN dpkg --add-architecture i386 && apt-get -y update && apt-get -y install wine32
|
||||
|
||||
RUN tmpdir=$(mktemp -d) && cd $tmpdir && git clone https://gitlab.com/librewolf-community/browser/windows.git && cd windows/linux && make setup-debian && make fetch && make bootstrap && cd /root && rm -rf $tmpdir
|
||||
|
||||
WORKDIR /work
|
||||
VOLUME ["/work"]
|
||||
42
assets/windows.mk
Normal file
42
assets/windows.mk
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
# windows.mk - this one is quite a bit different from the others,
|
||||
# but we can fix that later.
|
||||
|
||||
.PHONY : docker build
|
||||
|
||||
version:=$(shell cat version)
|
||||
release:=$(shell cat release)
|
||||
source_release:=$(shell cat source_release)
|
||||
full_version:=$(version)-$(source_release)$(shell [ $(release) -gt 1 ] && echo "-$(release)")
|
||||
|
||||
outfile-exe=librewolf-$(full_version).en-US.win64-setup.exe
|
||||
outfile-zip=librewolf-$(full_version).en-US.win64-portable.zip
|
||||
outfiles=$(outfile-exe) $(outfile-zip)
|
||||
|
||||
distro=windows
|
||||
image=registry.gitlab.com/librewolf-community/browser/bsys5/$(distro):latest
|
||||
|
||||
docker :
|
||||
|
||||
docker build -t $(image) - < assets/windows.Dockerfile
|
||||
|
||||
build :
|
||||
|
||||
pwd
|
||||
rm -rf windows
|
||||
git clone https://gitlab.com/librewolf-community/browser/windows.git
|
||||
|
||||
( cd windows/linux && pwd && ${MAKE} fetch )
|
||||
|
||||
ifeq ($(use_docker),false)
|
||||
( cd windows/linux && ${MAKE} )
|
||||
else
|
||||
docker run --rm -v $(shell pwd)/windows/linux:/work:rw registry.gitlab.com/librewolf-community/browser/bsys5/$(distro) sh -c "${MAKE} all"
|
||||
endif
|
||||
|
||||
cp -v windows/linux/$(outfiles) .
|
||||
|
||||
sha256sum $(outfile-exe) > $(outfile-exe).sha256sum
|
||||
cat $(outfile-exe).sha256sum
|
||||
sha256sum $(outfile-zip) > $(outfile-zip).sha256sum
|
||||
cat $(outfile-zip).sha256sum
|
||||
|
||||
1
submodules/windows
Submodule
1
submodules/windows
Submodule
|
|
@ -0,0 +1 @@
|
|||
Subproject commit 70b155aca44a159c3a93430f283efd2df2381547
|
||||
2
version
2
version
|
|
@ -1 +1 @@
|
|||
98.0
|
||||
116.0.2
|
||||
|
|
|
|||
1
windows
Submodule
1
windows
Submodule
|
|
@ -0,0 +1 @@
|
|||
Subproject commit b3b007f1710ccfe2c9b6442f5f836a16af8b5acb
|
||||
Loading…
Add table
Reference in a new issue