From aae0f2868e8dcf0789dd9ba7290bdde92baca176 Mon Sep 17 00:00:00 2001 From: su-ex Date: Sat, 24 Feb 2024 19:37:16 +0100 Subject: [PATCH 1/8] New test release v1.11.36-sc.0.test.2 --- element-desktop | 2 +- element-web | 2 +- matrix-react-sdk | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/element-desktop b/element-desktop index 738de77..cbd51cb 160000 --- a/element-desktop +++ b/element-desktop @@ -1 +1 @@ -Subproject commit 738de7784bddb2285d2f015102e8e2e15877decb +Subproject commit cbd51cb2e95298d1992bceaf1b7cd8d0e4fbc786 diff --git a/element-web b/element-web index ecf1586..ed6795a 160000 --- a/element-web +++ b/element-web @@ -1 +1 @@ -Subproject commit ecf1586a0f83a9fbce1c95290f1520a64848d894 +Subproject commit ed6795ae7a77235e547193011b9dd54c9e8412b8 diff --git a/matrix-react-sdk b/matrix-react-sdk index 3638445..361a49f 160000 --- a/matrix-react-sdk +++ b/matrix-react-sdk @@ -1 +1 @@ -Subproject commit 363844517bc5e55327c459a0d0f3a3280a975d10 +Subproject commit 361a49f235d7e267958bfe8dc653e1e777a5861c From e9faf9ab15ad5e375e785b120e7643b273f675c8 Mon Sep 17 00:00:00 2001 From: su-ex Date: Sat, 24 Feb 2024 19:43:25 +0100 Subject: [PATCH 2/8] Bump node version from 16 to 18 --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 205cea9..3c86970 100644 --- a/Makefile +++ b/Makefile @@ -12,7 +12,7 @@ all: web YARN ?= yarnpkg CONTAINER_ENGINE ?= podman -NODE_VERSION ?= 16 +NODE_VERSION ?= 18 VERSION := $(shell grep version element-desktop/package.json | sed 's|.*: \"\(.*\)\",|\1|') WEB_APP_NAME := $(shell grep '"name"' element-web/package.json | head -n 1 | sed 's|.*: \"\(.*\)\",|\1|') From 90912a5d0700e82b514e5ff9afd468db58e583ec Mon Sep 17 00:00:00 2001 From: SpiritCroc Date: Sat, 24 Feb 2024 19:36:32 +0100 Subject: [PATCH 3/8] Fix debian container compile --- Containerfile.debian | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Containerfile.debian b/Containerfile.debian index 041c64e..f079562 100644 --- a/Containerfile.debian +++ b/Containerfile.debian @@ -1,5 +1,5 @@ ARG NODE_VERSION -FROM node:${NODE_VERSION} +FROM node:${NODE_VERSION}-buster RUN apt-get -qq update && apt-get -qq install --no-install-recommends -y \ curl \ @@ -27,4 +27,4 @@ COPY . /project WORKDIR /project # There might be remnants of the host which break the build -RUN make fixup \ No newline at end of file +RUN make fixup From 1338cf06041b77b557f31f37b26a8c2066072c55 Mon Sep 17 00:00:00 2001 From: su-ex Date: Sat, 24 Feb 2024 21:45:02 +0100 Subject: [PATCH 4/8] Fix containerbuilds, also always use host directory as project directory --- Containerfile.fedora | 13 +++++++------ Makefile | 17 ++++++++++------- 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/Containerfile.fedora b/Containerfile.fedora index a61578c..2ac846d 100644 --- a/Containerfile.fedora +++ b/Containerfile.fedora @@ -1,6 +1,6 @@ -FROM fedora:latest +FROM docker.io/fedora:38 -RUN dnf install -y openssl openssl-devel rust cargo llvm libsecret libsecret-devel g++ ruby-devel gcc make rpm-build libffi-devel tcl libxcrypt-compat +RUN dnf install -y openssl openssl-devel cargo llvm libsecret libsecret-devel sqlcipher sqlcipher-devel g++ ruby-devel gcc make rpm-build libffi-devel tcl libxcrypt-compat # node setup ARG NODE_VERSION @@ -13,8 +13,9 @@ RUN npm install -g yarn RUN npm install -g node-gyp RUN gem install --no-user-install --no-document fpm -COPY . /project -WORKDIR /project +ENV RUSTUP_HOME=/usr/local/rustup \ + CARGO_HOME=/usr/local/cargo \ + PATH=/usr/local/cargo/bin:$PATH +RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --no-modify-path --profile minimal -# There might be remnants of the host which break the build -RUN make fixup +WORKDIR /project \ No newline at end of file diff --git a/Makefile b/Makefile index 3c86970..074b8fa 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ .PHONY: web-release debian-release rpm-release pacman-release windows-setup-release windows-unpacked-release windows-portable-release windows-release .PHONY: macos-common macos macos-mas macos-release macos-mas-release icns .PHONY: container-build-debian container-build-fedora -.PHONY: container-web-release container-debian-release container-rpm-release container-appimage-release +.PHONY: container-web-release container-debian-release container-rpm-release container-appimage-release container-local-pkgbuild .PHONY: clean undo_setup fixup .PHONY: fix_yarn_cache @@ -162,22 +162,25 @@ macos-mas-release: macos-mas cp $(OUT_MACOS_MAS) $(CURRENT_RELEASE_DIR) container-build-debian: - $(CONTAINER_ENGINE) build -t $(CONTAINER_IMAGE_DEBIAN) -f Containerfile.debian --build-arg NODE_VERSION=$(NODE_VERSION) . + $(CONTAINER_ENGINE) build --security-opt seccomp=unconfined --security-opt label=disable -t $(CONTAINER_IMAGE_DEBIAN) -f Containerfile.debian --build-arg NODE_VERSION=$(NODE_VERSION) . container-build-fedora: - $(CONTAINER_ENGINE) build -t $(CONTAINER_IMAGE_FEDORA) -f Containerfile.fedora --build-arg NODE_VERSION=$(NODE_VERSION) . + $(CONTAINER_ENGINE) build --security-opt seccomp=unconfined --security-opt label=disable -t $(CONTAINER_IMAGE_FEDORA) -f Containerfile.fedora --build-arg NODE_VERSION=$(NODE_VERSION) . container-web-release: container-build-debian - $(CONTAINER_ENGINE) run --rm -ti -v $(PWD)/release:/project/release --security-opt label=disable $(CONTAINER_IMAGE_DEBIAN):latest make web-release + $(CONTAINER_ENGINE) run --rm -ti -v $(PWD):/project --security-opt seccomp=unconfined --security-opt label=disable $(CONTAINER_IMAGE_DEBIAN):latest make web-release container-debian-release: container-build-debian - $(CONTAINER_ENGINE) run --rm -ti -v $(PWD)/release:/project/release --security-opt label=disable $(CONTAINER_IMAGE_DEBIAN):latest make debian-release + $(CONTAINER_ENGINE) run --rm -ti -v $(PWD):/project --security-opt seccomp=unconfined --security-opt label=disable $(CONTAINER_IMAGE_DEBIAN):latest make debian-release container-rpm-release: container-build-fedora - $(CONTAINER_ENGINE) run --rm -ti -v $(PWD)/release:/project/release --security-opt label=disable $(CONTAINER_IMAGE_FEDORA):latest make rpm-release + $(CONTAINER_ENGINE) run --rm -ti -v $(PWD):/project --security-opt seccomp=unconfined --security-opt label=disable $(CONTAINER_IMAGE_FEDORA):latest make rpm-release container-appimage-release: container-build-debian - $(CONTAINER_ENGINE) run --rm -ti -v $(PWD)/release:/project/release --security-opt label=disable $(CONTAINER_IMAGE_DEBIAN):latest make appimage-release + $(CONTAINER_ENGINE) run --rm -ti -v $(PWD):/project --security-opt seccomp=unconfined --security-opt label=disable $(CONTAINER_IMAGE_DEBIAN):latest make appimage-release + +container-local-pkgbuild: container-build-debian + $(CONTAINER_ENGINE) run --rm -ti -v $(PWD):/project --security-opt seccomp=unconfined --security-opt label=disable $(CONTAINER_IMAGE_DEBIAN):latest make local-pkgbuild bom.lock: element-desktop/yarn.lock element-web/yarn.lock matrix-js-sdk/yarn.lock matrix-react-sdk/yarn.lock ./build-bom.sh From 446b55792fd71650bfc5ac5c800861227a05969d Mon Sep 17 00:00:00 2001 From: su-ex Date: Sat, 24 Feb 2024 22:28:53 +0100 Subject: [PATCH 5/8] This got lost while rebasing --- Containerfile.debian | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/Containerfile.debian b/Containerfile.debian index f079562..c8c75ba 100644 --- a/Containerfile.debian +++ b/Containerfile.debian @@ -23,8 +23,4 @@ ENV RUSTUP_HOME=/usr/local/rustup \ PATH=/usr/local/cargo/bin:$PATH RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --no-modify-path --profile minimal -COPY . /project -WORKDIR /project - -# There might be remnants of the host which break the build -RUN make fixup +WORKDIR /project \ No newline at end of file From 9241a6d044873acae993f6d1e2f9809d0624965d Mon Sep 17 00:00:00 2001 From: su-ex Date: Sat, 24 Feb 2024 22:29:48 +0100 Subject: [PATCH 6/8] Use fully qualified name here as well --- Containerfile.debian | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Containerfile.debian b/Containerfile.debian index c8c75ba..85222fc 100644 --- a/Containerfile.debian +++ b/Containerfile.debian @@ -1,5 +1,5 @@ ARG NODE_VERSION -FROM node:${NODE_VERSION}-buster +FROM docker.io/node:${NODE_VERSION}-buster RUN apt-get -qq update && apt-get -qq install --no-install-recommends -y \ curl \ From ab496f797715fd2641a5045d2fa65f3478c80de7 Mon Sep 17 00:00:00 2001 From: su-ex Date: Sun, 25 Feb 2024 20:36:48 +0100 Subject: [PATCH 7/8] Fully containerized release builds --- Containerfile.windows | 13 +++++++++++++ Makefile | 15 +++++++++++++-- matrix-react-sdk | 2 +- 3 files changed, 27 insertions(+), 3 deletions(-) create mode 100644 Containerfile.windows diff --git a/Containerfile.windows b/Containerfile.windows new file mode 100644 index 0000000..0c0776a --- /dev/null +++ b/Containerfile.windows @@ -0,0 +1,13 @@ +ARG CONTAINER_IMAGE_DEBIAN +FROM ${CONTAINER_IMAGE_DEBIAN}:latest + +RUN dpkg --add-architecture i386 && apt-get update && apt-get install --no-install-recommends -y \ + wine \ + wine32 \ + wine64 \ + libwine \ + libwine:i386 \ + fonts-wine \ + zip + +WORKDIR /project \ No newline at end of file diff --git a/Makefile b/Makefile index 074b8fa..7ac67c1 100644 --- a/Makefile +++ b/Makefile @@ -1,8 +1,8 @@ .PHONY: all setup regenerate-i18n web desktop-common linux debian rpm pacman local-pkgbuild local-pkgbuild-install windows windows-portable .PHONY: web-release debian-release rpm-release pacman-release windows-setup-release windows-unpacked-release windows-portable-release windows-release .PHONY: macos-common macos macos-mas macos-release macos-mas-release icns -.PHONY: container-build-debian container-build-fedora -.PHONY: container-web-release container-debian-release container-rpm-release container-appimage-release container-local-pkgbuild +.PHONY: container-build-debian container-build-fedora container-build-windows +.PHONY: container-web-release container-debian-release container-rpm-release container-appimage-release container-windows-release container-release container-local-pkgbuild .PHONY: clean undo_setup fixup .PHONY: fix_yarn_cache @@ -39,6 +39,7 @@ OUT_MACOS_MAS := $(DESKTOP_OUT)/mas-universal/$(PRODUCT_NAME).app CONTAINER_IMAGE_DEBIAN := schildichat-desktop-containerbuild-debian CONTAINER_IMAGE_FEDORA := schildichat-desktop-containerbuild-fedora +CONTAINER_IMAGE_WINDOWS := schildichat-desktop-containerbuild-windows RELEASE_DIR := release CURRENT_RELEASE_DIR := $(RELEASE_DIR)/$(VERSION) @@ -167,6 +168,9 @@ container-build-debian: container-build-fedora: $(CONTAINER_ENGINE) build --security-opt seccomp=unconfined --security-opt label=disable -t $(CONTAINER_IMAGE_FEDORA) -f Containerfile.fedora --build-arg NODE_VERSION=$(NODE_VERSION) . +container-build-windows: container-build-debian + $(CONTAINER_ENGINE) build --security-opt seccomp=unconfined --security-opt label=disable -t $(CONTAINER_IMAGE_WINDOWS) -f Containerfile.windows --build-arg CONTAINER_IMAGE_DEBIAN=$(CONTAINER_IMAGE_DEBIAN) . + container-web-release: container-build-debian $(CONTAINER_ENGINE) run --rm -ti -v $(PWD):/project --security-opt seccomp=unconfined --security-opt label=disable $(CONTAINER_IMAGE_DEBIAN):latest make web-release @@ -179,6 +183,13 @@ container-rpm-release: container-build-fedora container-appimage-release: container-build-debian $(CONTAINER_ENGINE) run --rm -ti -v $(PWD):/project --security-opt seccomp=unconfined --security-opt label=disable $(CONTAINER_IMAGE_DEBIAN):latest make appimage-release +container-windows-release: container-build-windows + $(CONTAINER_ENGINE) run --rm -ti -v $(PWD):/project --security-opt seccomp=unconfined --security-opt label=disable $(CONTAINER_IMAGE_WINDOWS):latest make windows-release + +container-release: container-build-windows container-build-fedora + $(CONTAINER_ENGINE) run --rm -ti -v $(PWD):/project --security-opt seccomp=unconfined --security-opt label=disable $(CONTAINER_IMAGE_WINDOWS):latest make web-release debian-release appimage-release windows-setup-release windows-portable-release + $(CONTAINER_ENGINE) run --rm -ti -v $(PWD):/project --security-opt seccomp=unconfined --security-opt label=disable $(CONTAINER_IMAGE_FEDORA):latest make rpm-release + container-local-pkgbuild: container-build-debian $(CONTAINER_ENGINE) run --rm -ti -v $(PWD):/project --security-opt seccomp=unconfined --security-opt label=disable $(CONTAINER_IMAGE_DEBIAN):latest make local-pkgbuild diff --git a/matrix-react-sdk b/matrix-react-sdk index 361a49f..7aca4ab 160000 --- a/matrix-react-sdk +++ b/matrix-react-sdk @@ -1 +1 @@ -Subproject commit 361a49f235d7e267958bfe8dc653e1e777a5861c +Subproject commit 7aca4ab6c0a0ab96382eeb4fe3470698f31b4d44 From 9f8bad4ea516f7b5380dc347e1fc55a55b937295 Mon Sep 17 00:00:00 2001 From: su-ex Date: Sun, 25 Feb 2024 20:36:56 +0100 Subject: [PATCH 8/8] New release v1.11.36-sc.1 --- element-desktop | 2 +- element-web | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/element-desktop b/element-desktop index cbd51cb..07a530e 160000 --- a/element-desktop +++ b/element-desktop @@ -1 +1 @@ -Subproject commit cbd51cb2e95298d1992bceaf1b7cd8d0e4fbc786 +Subproject commit 07a530ef7d811223c224520ad973aac0230ece67 diff --git a/element-web b/element-web index ed6795a..6e9a004 160000 --- a/element-web +++ b/element-web @@ -1 +1 @@ -Subproject commit ed6795ae7a77235e547193011b9dd54c9e8412b8 +Subproject commit 6e9a004b0d57cd1bbd26ff2624de45c259be0412