Compare commits

..

6 commits

Author SHA1 Message Date
su-ex
d8e3854033
New release v1.7.22-sc1 2021-03-03 20:19:10 +01:00
su-ex
8d8a5044f1
make: Remove old macos reskindex leftover 2021-02-19 14:52:35 +01:00
su-ex
2654090ccc
Update README.md 2021-02-16 13:35:35 +01:00
su-ex
e31047073f
make: Fix for reskindex 2021-02-16 13:32:30 +01:00
su-ex
1f5be68a19
Add macOS build dependencies to readme
Thanks to @michi7801
2021-02-16 13:10:09 +01:00
su-ex
e2465f6176
Add option to build for macos 2021-02-05 22:16:12 +01:00
6 changed files with 37 additions and 9 deletions

View file

@ -1,4 +1,4 @@
.PHONY: all setup web desktop desktop-common linux debian pacman local-pkgbuild local-pkgbuild-install windows windows-portable .PHONY: all setup reskindex web desktop desktop-common linux debian pacman local-pkgbuild local-pkgbuild-install windows windows-portable
.PHONY: web-release debian-release pacman-release windows-setup-release windows-unpacked-release windows-portable-release windows-release release .PHONY: web-release debian-release pacman-release windows-setup-release windows-unpacked-release windows-portable-release windows-release release
.PHONY: clean .PHONY: clean
@ -27,6 +27,7 @@ OUT_WIN64_PORTABLE := $(DESKTOP_OUT)/$(PRODUCT_NAME)\ $(VERSION).exe
OUT_WIN64_BETTER_NAME := $(PRODUCT_NAME)_Setup_v$(VERSION).exe OUT_WIN64_BETTER_NAME := $(PRODUCT_NAME)_Setup_v$(VERSION).exe
OUT_WIN64_UNPACKED_BETTER_NAME := $(PRODUCT_NAME)_win-unpacked_v$(VERSION).zip OUT_WIN64_UNPACKED_BETTER_NAME := $(PRODUCT_NAME)_win-unpacked_v$(VERSION).zip
OUT_WIN64_PORTABLE_BETTER_NAME := $(PRODUCT_NAME)_win-portable_v$(VERSION) OUT_WIN64_PORTABLE_BETTER_NAME := $(PRODUCT_NAME)_win-portable_v$(VERSION)
OUT_MACOS := $(DESKTOP_OUT)/$(PRODUCT_NAME)-$(VERSION).dmg
RELEASE_DIR := release RELEASE_DIR := release
CURRENT_RELEASE_DIR := $(RELEASE_DIR)/$(VERSION) CURRENT_RELEASE_DIR := $(RELEASE_DIR)/$(VERSION)
@ -38,8 +39,12 @@ setup:
if [ ! -L "element-desktop/webapp" ]; then ./setup.sh; fi if [ ! -L "element-desktop/webapp" ]; then ./setup.sh; fi
cp $(CFGDIR)/config.json element-web/ cp $(CFGDIR)/config.json element-web/
reskindex: setup
$(YARN) --cwd matrix-react-sdk reskindex
$(YARN) --cwd element-web reskindex
web: export DIST_VERSION=$(WEB_OUT_DIST_VERSION) web: export DIST_VERSION=$(WEB_OUT_DIST_VERSION)
web: setup web: setup reskindex
$(YARN) --cwd element-web dist $(YARN) --cwd element-web dist
echo "$(VERSION)" > element-web/webapp/version echo "$(VERSION)" > element-web/webapp/version
@ -67,6 +72,9 @@ windows: desktop-common
windows-portable: desktop-common windows-portable: desktop-common
$(YARN) --cwd element-desktop run build64windows-portable $(YARN) --cwd element-desktop run build64windows-portable
macos: desktop-common
$(YARN) --cwd element-desktop run build --mac dmg -c.mac.identity=null
local-pkgbuild: debian local-pkgbuild: debian
./create_local_pkgbuild.sh $(VERSION) $(DESKTOP_APP_NAME) $(PRODUCT_NAME) $(OUT_DEB64) ./create_local_pkgbuild.sh $(VERSION) $(DESKTOP_APP_NAME) $(PRODUCT_NAME) $(OUT_DEB64)
@ -102,6 +110,10 @@ windows-portable-release: windows-portable
windows-release: windows-setup-release windows-unpacked-release windows-portable-release windows-release: windows-setup-release windows-unpacked-release windows-portable-release
macos-release: macos
mkdir -p $(CURRENT_RELEASE_DIR)
cp $(OUT_MACOS) $(CURRENT_RELEASE_DIR)
release: web-release debian-release pacman-release windows-release release: web-release debian-release pacman-release windows-release
clean: clean:

View file

@ -20,8 +20,9 @@ Feel free to [join the discussion on matrix](https://matrix.to/#/#schildichat-we
This particular repo is a wrapper project for element-desktop, element-web, matrix-react-sdk and matrix-js-sdk in order to build SchildiChat Web **and** Desktop. This particular repo is a wrapper project for element-desktop, element-web, matrix-react-sdk and matrix-js-sdk in order to build SchildiChat Web **and** Desktop.
### Install dependencies
### Debian build dependencies #### Debian build dependencies
Since Debian is usually slow to update packages on its stable releases, Since Debian is usually slow to update packages on its stable releases,
some dependencies might not be recent enough to build SchildiChat. some dependencies might not be recent enough to build SchildiChat.
@ -43,6 +44,20 @@ $ echo 'export PATH="$PATH:$HOME/.cargo/bin"' >> .bashrc
$ source .bashrc $ source .bashrc
``` ```
#### macOS build dependencies
##### Install brew package manager
```
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
```
##### Install packages
```
brew install tcl rust node gpg vim curl git yarn git make gcc
```
### Initial setup ### Initial setup
``` ```
@ -57,7 +72,7 @@ Those are the builds distributed via GitHub releases.
``` ```
# The single make targets are explained below # The single make targets are explained below
make [{web|debian|windows-setup|windows-portable}-release] make [{web|debian|windows-setup|windows-portable|macos}-release]
``` ```
After that these packages which belong to to their respective make target should appear in release/\<version\>/: After that these packages which belong to to their respective make target should appear in release/\<version\>/:
@ -65,6 +80,7 @@ After that these packages which belong to to their respective make target should
- `debian`: file ready for installation on a **Debian Linux** (based) system via `dpkg -i schildichat-desktop_<version>_amd64.deb` - `debian`: file ready for installation on a **Debian Linux** (based) system via `dpkg -i schildichat-desktop_<version>_amd64.deb`
- `windows-setup`: _SchildiChat_Setup_v\<version\>.exe_: file ready for **installation** on a **Windows** system - `windows-setup`: _SchildiChat_Setup_v\<version\>.exe_: file ready for **installation** on a **Windows** system
- `windows-portable`: _SchildiChat_win-portable_v\<version\>.zip_: **portable** version for a **Windows** system take SchildiChat together with your login data around with you (the archive contains a readme with **instructions** and **notes**) - `windows-portable`: _SchildiChat_win-portable_v\<version\>.zip_: **portable** version for a **Windows** system take SchildiChat together with your login data around with you (the archive contains a readme with **instructions** and **notes**)
- `macos`: Build a *.dmg for macOS
#### Additional make targets not used for GitHub releases #### Additional make targets not used for GitHub releases
- `pacman`: file ready for installation on an **Arch Linux** (based) system via `pacman -U schildichat-desktop-<version>.pacman` - `pacman`: file ready for installation on an **Arch Linux** (based) system via `pacman -U schildichat-desktop-<version>.pacman`
@ -73,7 +89,7 @@ After that these packages which belong to to their respective make target should
### Build SchildiChat Web and deploy it directly to your web server ### Build SchildiChat Web and deploy it directly to your web server
Put the `config.json` with the [configuration](https://github.com/SchildiChat/element-web/blob/sc/docs/config.md) you want for your hosted instance in a subfolder of the `configs` folder. Put the `config.json` with the [configuration](https://github.com/SchildiChat/element-web/blob/sc/docs/config.md) you want for your hosted instance in a subfolder of the `configs` folder.
Then create a file named `release.mk` and and fill it similar to that: Then create a file named `release.mk` and fill it similar to that:
``` ```
.PHONY: your-deploy-web .PHONY: your-deploy-web

@ -1 +1 @@
Subproject commit ef0910357c8ac845c3fc0b9132842f71554a7348 Subproject commit 8fb350141acbd8d61cbb9e837c7f947809131956

@ -1 +1 @@
Subproject commit 20846ab1dc580c7e3c6dc9899afc2b06ab3cb7e2 Subproject commit 84434c6e1662114268bd50847f2a57800e45f44f

@ -1 +1 @@
Subproject commit 209f23989a7f921a515ecdee20e91a703b0a3b54 Subproject commit a9c4c51e62c1fd41138d0e062223bf549d5dceee

@ -1 +1 @@
Subproject commit 4f0e45ecaf5f4b85995141a338ddb619b7d33023 Subproject commit c1e1e0c5526d3aba6907d0faeabaaf312f842d41