mirror of
https://github.com/Nheko-Reborn/nheko.git
synced 2024-11-25 20:48:52 +03:00
Merge branch 'gitlab-ci' into 'master'
Update .gitlab-ci.yml See merge request nheko-reborn/nheko!1
This commit is contained in:
commit
622a9f709b
8 changed files with 160 additions and 6 deletions
9
.ci/macos/Brewfile
Normal file
9
.ci/macos/Brewfile
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
tap "nlohmann/json"
|
||||||
|
|
||||||
|
brew "clang-format"
|
||||||
|
brew "cmake"
|
||||||
|
brew "ninja"
|
||||||
|
brew "openssl"
|
||||||
|
brew "qt5"
|
||||||
|
brew "python3"
|
||||||
|
brew "nlohmann_json"
|
|
@ -71,6 +71,7 @@ cmake -GNinja -H. -Bbuild \
|
||||||
-DHUNTER_ROOT=".hunter" \
|
-DHUNTER_ROOT=".hunter" \
|
||||||
-DHUNTER_ENABLED=ON -DBUILD_SHARED_LIBS=OFF \
|
-DHUNTER_ENABLED=ON -DBUILD_SHARED_LIBS=OFF \
|
||||||
-DCMAKE_BUILD_TYPE=RelWithDebInfo -DHUNTER_CONFIGURATION_TYPES=RelWithDebInfo \
|
-DCMAKE_BUILD_TYPE=RelWithDebInfo -DHUNTER_CONFIGURATION_TYPES=RelWithDebInfo \
|
||||||
|
-DUSE_BUNDLED_OPENSSL=OFF \
|
||||||
-DCI_BUILD=ON
|
-DCI_BUILD=ON
|
||||||
fi
|
fi
|
||||||
cmake --build build
|
cmake --build build
|
||||||
|
|
9
.ci/upload-nightly-gitlab.sh
Executable file
9
.ci/upload-nightly-gitlab.sh
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
file="$1"
|
||||||
|
fileName="nheko-${CI_COMMIT_REF_NAME}-${CI_COMMIT_SHORT_SHA}-${file##*-}"
|
||||||
|
|
||||||
|
uri=$(curl -H "Authorization: Bearer ${MATRIX_ACCESS_TOKEN}" -H "Content-Type: application/x-compressed" -X POST --data-binary "@${file}" "https://matrix.neko.dev/_matrix/media/r0/upload?filename=${fileName}" --http1.1 | python -c "import sys, json; print(json.load(sys.stdin)['content_uri'])")
|
||||||
|
echo "Uploaded to ${uri}"
|
||||||
|
|
||||||
|
curl -H "Authorization: Bearer ${MATRIX_ACCESS_TOKEN}" -H "Content-Type: application/json" -X PUT -d "{ \"body\": \"${fileName}\", \"filename\": \"${fileName}\", \"info\": { \"mimetype\": \"application/x-compressed\", \"size\": $(wc -c < ${file}) }, \"msgtype\": \"m.file\", \"url\": \"${uri}\" }" "https://matrix.neko.dev/_matrix/client/r0/rooms/${ROOM}/send/m.room.message/$(date +%s)"
|
136
.gitlab-ci.yml
Normal file
136
.gitlab-ci.yml
Normal file
|
@ -0,0 +1,136 @@
|
||||||
|
variables:
|
||||||
|
CCACHE_COMPILERCHECK: content
|
||||||
|
CCACHE_DIR: "${CI_PROJECT_DIR}/.ccache"
|
||||||
|
# prevent configure tzdata hanging apt install commands
|
||||||
|
DEBIAN_FRONTEND: noninteractive
|
||||||
|
|
||||||
|
build-gcc7:
|
||||||
|
stage: build
|
||||||
|
image: ubuntu:16.04
|
||||||
|
tags: [docker]
|
||||||
|
variables:
|
||||||
|
CXX: g++-7
|
||||||
|
CC: gcc-7
|
||||||
|
QT_PKG: 510
|
||||||
|
TRAVIS_OS_NAME: linux
|
||||||
|
before_script:
|
||||||
|
- apt-get update
|
||||||
|
- apt-get install -y software-properties-common
|
||||||
|
- add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
||||||
|
- add-apt-repository ppa:beineri/opt-qt-5.10.1-xenial -y
|
||||||
|
- apt-get update && apt-get -y install --no-install-recommends g++-7 build-essential ninja-build qt${QT_PKG}{base,declarative,tools,multimedia,script,quickcontrols2,svg} liblmdb-dev libgl1-mesa-dev libssl-dev git ccache
|
||||||
|
# need recommended deps for wget
|
||||||
|
- apt-get -y install wget
|
||||||
|
- wget https://github.com/Kitware/CMake/releases/download/v3.19.0/cmake-3.19.0-Linux-x86_64.sh && sh cmake-3.19.0-Linux-x86_64.sh --skip-license --prefix=/usr/local
|
||||||
|
- /usr/sbin/update-ccache-symlinks
|
||||||
|
- update-alternatives --install /usr/bin/gcc gcc "/usr/bin/${CC}" 10
|
||||||
|
- update-alternatives --install /usr/bin/g++ g++ "/usr/bin/${CXX}" 10
|
||||||
|
- update-alternatives --set gcc "/usr/bin/${CC}"
|
||||||
|
- update-alternatives --set g++ "/usr/bin/${CXX}"
|
||||||
|
script:
|
||||||
|
- export PATH="/usr/lib/ccache:${PATH}"
|
||||||
|
- export CMAKE_BUILD_PARALLEL_LEVEL=$(cat /proc/cpuinfo | awk '/^processor/{print $3}' | wc -l)
|
||||||
|
- export PATH="/usr/local/bin/:${PATH}"
|
||||||
|
- . "/opt/qt${QT_PKG}/bin/qt${QT_PKG}-env.sh" || true
|
||||||
|
- mkdir -p .deps/usr .hunter
|
||||||
|
- mkdir -p build
|
||||||
|
- cmake -GNinja -H. -Bbuild
|
||||||
|
-DCMAKE_INSTALL_PREFIX=.deps/usr
|
||||||
|
-DHUNTER_ROOT=".hunter"
|
||||||
|
-DHUNTER_ENABLED=ON -DBUILD_SHARED_LIBS=OFF
|
||||||
|
-DCMAKE_BUILD_TYPE=Release -DHUNTER_CONFIGURATION_TYPES=Release
|
||||||
|
-DCI_BUILD=ON
|
||||||
|
- cmake --build build
|
||||||
|
cache:
|
||||||
|
key: "$CI_JOB_NAME"
|
||||||
|
paths:
|
||||||
|
- .hunter/
|
||||||
|
- .ccache
|
||||||
|
|
||||||
|
build-macos:
|
||||||
|
stage: build
|
||||||
|
tags: [macos]
|
||||||
|
before_script:
|
||||||
|
- brew update
|
||||||
|
- brew bundle --file=./.ci/macos/Brewfile
|
||||||
|
script:
|
||||||
|
- export PATH=/usr/local/opt/qt/bin/:${PATH}
|
||||||
|
- export CMAKE_PREFIX_PATH=/usr/local/opt/qt5
|
||||||
|
- cmake -GNinja -H. -Bbuild
|
||||||
|
-DCMAKE_BUILD_TYPE=RelWithDebInfo
|
||||||
|
-DCMAKE_INSTALL_PREFIX=.deps/usr
|
||||||
|
-DHUNTER_ROOT=".hunter"
|
||||||
|
-DHUNTER_ENABLED=ON -DBUILD_SHARED_LIBS=OFF
|
||||||
|
-DCMAKE_BUILD_TYPE=RelWithDebInfo -DHUNTER_CONFIGURATION_TYPES=RelWithDebInfo
|
||||||
|
-DUSE_BUNDLED_OPENSSL=ON
|
||||||
|
-DUSE_BUNDLED_BOOST=ON
|
||||||
|
-DCI_BUILD=ON
|
||||||
|
- cmake --build build
|
||||||
|
cache:
|
||||||
|
key: "${CI_JOB_NAME}"
|
||||||
|
paths:
|
||||||
|
- .hunter/
|
||||||
|
- "${CCACHE_DIR}"
|
||||||
|
|
||||||
|
build-flatpak-amd64:
|
||||||
|
stage: build
|
||||||
|
image: ubuntu:latest
|
||||||
|
#image: 'registry.gitlab.gnome.org/gnome/gnome-runtime-images/gnome:master'
|
||||||
|
tags: [docker]
|
||||||
|
before_script:
|
||||||
|
- apt-get update && apt-get -y install flatpak-builder git python curl
|
||||||
|
- flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
||||||
|
- flatpak --noninteractive install --user flathub org.kde.Platform//5.15
|
||||||
|
- flatpak --noninteractive install --user flathub org.kde.Sdk//5.15
|
||||||
|
script:
|
||||||
|
- export VERSION=$(git describe)
|
||||||
|
- mkdir -p build-flatpak
|
||||||
|
- cd build-flatpak
|
||||||
|
- flatpak-builder --user --disable-rofiles-fuse --ccache --repo=repo --default-branch=${CI_COMMIT_REF_NAME} --subject="Build of Nheko ${VERSION} `date`" app ../io.github.NhekoReborn.Nheko.json
|
||||||
|
- flatpak build-bundle repo nheko-amd64.flatpak io.github.NhekoReborn.Nheko ${CI_COMMIT_REF_NAME}
|
||||||
|
after_script:
|
||||||
|
- bash ./.ci/upload-nightly-gitlab.sh build-flatpak/nheko-amd64.flatpak
|
||||||
|
cache:
|
||||||
|
key: "$CI_JOB_NAME"
|
||||||
|
paths:
|
||||||
|
- build-flatpak/.flatpak-builder/
|
||||||
|
artifacts:
|
||||||
|
expose_as: 'flatpak-amd64'
|
||||||
|
paths: ['build-flatpak/nheko-amd64.flatpak']
|
||||||
|
name: flatpak-${CI_COMMIT_REF_NAME}-${VERSION}-amd64
|
||||||
|
|
||||||
|
build-flatpak-arm64:
|
||||||
|
stage: build
|
||||||
|
image: ubuntu:latest
|
||||||
|
#image: 'registry.gitlab.gnome.org/gnome/gnome-runtime-images/gnome:master'
|
||||||
|
tags: [docker-arm64]
|
||||||
|
before_script:
|
||||||
|
- apt-get update && apt-get -y install flatpak-builder git python curl
|
||||||
|
- flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
||||||
|
- flatpak --noninteractive install --user flathub org.kde.Platform//5.15
|
||||||
|
- flatpak --noninteractive install --user flathub org.kde.Sdk//5.15
|
||||||
|
script:
|
||||||
|
- export VERSION=$(git describe)
|
||||||
|
- mkdir -p build-flatpak
|
||||||
|
- cd build-flatpak
|
||||||
|
- flatpak-builder --user --disable-rofiles-fuse --ccache --repo=repo --default-branch=${CI_COMMIT_REF_NAME} --subject="Build of Nheko ${VERSION} `date` for arm64" app ../io.github.NhekoReborn.Nheko.json
|
||||||
|
- flatpak build-bundle repo nheko-arm64.flatpak io.github.NhekoReborn.Nheko ${CI_COMMIT_REF_NAME}
|
||||||
|
after_script:
|
||||||
|
- bash ./.ci/upload-nightly-gitlab.sh build-flatpak/nheko-arm64.flatpak
|
||||||
|
cache:
|
||||||
|
key: "$CI_JOB_NAME"
|
||||||
|
paths:
|
||||||
|
- build-flatpak/.flatpak-builder/
|
||||||
|
artifacts:
|
||||||
|
expose_as: 'flatpak-arm64'
|
||||||
|
paths: ['build-flatpak/nheko-arm64.flatpak']
|
||||||
|
name: flatpak-${CI_COMMIT_REF_NAME}-${VERSION}-arm64
|
||||||
|
|
||||||
|
linting:
|
||||||
|
stage: build
|
||||||
|
image: alpine:latest
|
||||||
|
tags: [docker]
|
||||||
|
before_script:
|
||||||
|
- apk update && apk add clang make git
|
||||||
|
script:
|
||||||
|
- make lint
|
|
@ -89,8 +89,8 @@ fix_project_version()
|
||||||
|
|
||||||
# Set additional project information
|
# Set additional project information
|
||||||
set(COMPANY "Nheko")
|
set(COMPANY "Nheko")
|
||||||
set(COPYRIGHT "Copyright (c) 2019 Nheko Contributors")
|
set(COPYRIGHT "Copyright (c) 2020 Nheko Contributors")
|
||||||
set(IDENTIFIER "com.github.mujx.nheko")
|
set(IDENTIFIER "io.github.nheko-reborn.nheko")
|
||||||
|
|
||||||
add_project_meta(META_FILES_TO_INCLUDE)
|
add_project_meta(META_FILES_TO_INCLUDE)
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{
|
{
|
||||||
"id": "io.github.NhekoReborn.Nheko",
|
"id": "io.github.NhekoReborn.Nheko",
|
||||||
"command": "nheko",
|
"command": "nheko",
|
||||||
"branch": "master",
|
|
||||||
"runtime": "org.kde.Platform",
|
"runtime": "org.kde.Platform",
|
||||||
"runtime-version": "5.15",
|
"runtime-version": "5.15",
|
||||||
"sdk": "org.kde.Sdk",
|
"sdk": "org.kde.Sdk",
|
||||||
|
|
|
@ -602,8 +602,8 @@ send_key_request_for(mtx::events::EncryptedEvent<mtx::events::msg::Encrypted> e,
|
||||||
e.content.session_id);
|
e.content.session_id);
|
||||||
|
|
||||||
mtx::events::msg::KeyRequest request;
|
mtx::events::msg::KeyRequest request;
|
||||||
request.action = !cancel ? mtx::events::msg::RequestAction::Request
|
request.action = !cancel ? mtx::events::msg::RequestAction::Request
|
||||||
: mtx::events::msg::RequestAction::Cancellation;
|
: mtx::events::msg::RequestAction::Cancellation;
|
||||||
request.algorithm = MEGOLM_ALGO;
|
request.algorithm = MEGOLM_ALGO;
|
||||||
request.room_id = e.room_id;
|
request.room_id = e.room_id;
|
||||||
request.sender_key = e.content.sender_key;
|
request.sender_key = e.content.sender_key;
|
||||||
|
|
|
@ -638,7 +638,7 @@ utils::luminance(const QColor &col)
|
||||||
qreal lumRgb[3];
|
qreal lumRgb[3];
|
||||||
|
|
||||||
for (int i = 0; i < 3; i++) {
|
for (int i = 0; i < 3; i++) {
|
||||||
qreal v = colRgb[i] / 255.0;
|
qreal v = colRgb[i] / 255.0;
|
||||||
v <= 0.03928 ? lumRgb[i] = v / 12.92 : lumRgb[i] = qPow((v + 0.055) / 1.055, 2.4);
|
v <= 0.03928 ? lumRgb[i] = v / 12.92 : lumRgb[i] = qPow((v + 0.055) / 1.055, 2.4);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue