morpheus

A Matrix client written in Go-QT
git clone git://archive.git.mtrnord.blog/Nordgedanken/morpheus.git
Log | Files | Refs | README | LICENSE

commit e2235c1d272f9513e81b3f80bbe0a98aae342831
parent 29dd9b84bd88fd4fefad283919c714a67b040e59
Author: Marcel <MTRNord@users.noreply.github.com>
Date:   Wed,  6 Dec 2017 13:21:32 +0100

CI Update and Doc update (#41)

* Update Readme.md
* Add ISSUE_TEMPLATE file
* Add Contributing.md
* Fix circleCI
* Cleanup
* Use shields.io to get build status

Signed-off-by: MTRNord <mtrnord1@gmail.com>

Diffstat:
D.ci/linux.sh | 43-------------------------------------------
A.circleci/config.yml | 19+++++++++++++++++++
A.github/ISSUE_TEMPLATE.md | 33+++++++++++++++++++++++++++++++++
ACONTRIBUTING.md | 91+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
MREADME.md | 34++++++++++++++++++++++++++++------
Dcircle.yml | 19-------------------
6 files changed, 171 insertions(+), 68 deletions(-)

diff --git a/.ci/linux.sh b/.ci/linux.sh @@ -1,43 +0,0 @@ -#!/bin/bash -set -ev - -#check env -df -h - -ls $HOME/* -du -sh $HOME/* - -#needed for headless qt installation -export QT_QPA_PLATFORM=minimal - -#additional deps for multimedia -sudo apt-get -y -qq install libpulse-dev && sudo apt-get -qq clean - -#replace gcc4 with gcc5 -sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test -sudo apt-get -qq update -sudo apt-get -y -qq install gcc-5 g++-5 && sudo apt-get -qq clean -sudo rm -f /usr/bin/gcc; sudo ln -s /usr/bin/gcc-5 /usr/bin/gcc -sudo rm -f /usr/bin/g++; sudo ln -s /usr/bin/g++-5 /usr/bin/g++ - -#download and install qt -sudo add-apt-repository -y ppa:beineri/opt-qt58-trusty -sudo apt-get -qq update -sudo apt-get -y -qq install qt583d qt58base qt58canvas3d qt58charts-no-lgpl qt58connectivity qt58creator qt58datavis3d-no-lgpl qt58declarative qt58doc qt58gamepad qt58graphicaleffects qt58imageformats qt58location qt58multimedia qt58qbs qt58quickcontrols qt58quickcontrols2 qt58script qt58scxml qt58sensors qt58serialbus qt58serialport qt58svg qt58tools qt58translations qt58virtualkeyboard-no-lgpl qt58webchannel qt58webengine qt58websockets qt58x11extras qt58xmlpatterns qt58speech qt58networkauth-no-lgpl && sudo apt-get -qq clean -QT=qt-unified-linux-x64-online.run -curl -sL --retry 10 --retry-delay 10 -o /tmp/$QT https://download.qt.io/official_releases/online_installers/$QT -chmod +x /tmp/$QT -/tmp/$QT --script $GOPATH/src/github.com/therecipe/qt/internal/ci/iscript.qs -rm -f /tmp/$QT - -#prepare env -sudo chown $USER /usr/local/bin -sudo chown $USER $GOROOT/pkg | true - -#check env -df -h - -ls $HOME/* -du -sh $HOME/* - -exit 0 diff --git a/.circleci/config.yml b/.circleci/config.yml @@ -0,0 +1,19 @@ +version: 2 +jobs: + build: + docker: + - image: therecipe/qt:linux + environment: + DESKTOP: true + steps: + - run: + name: Get Morpheus + command: go get -u -v -d github.com/Nordgedanken/Morpheus/... + - run: + name: Run Build + working_directory: /home/user/work/src/github.com/Nordgedanken/Morpheus/ + command: $GOPATH/bin/qtdeploy build desktop + - run: + name: Run Tests + working_directory: /home/user/work/src/github.com/Nordgedanken/Morpheus/ + command: $GOPATH/bin/qtdeploy test desktop diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md @@ -0,0 +1,32 @@ +Issue tracker is **ONLY** used for reporting bugs. NO NEW FEATURE ACCEPTED! Use the [Matrix Room](https://matrix.to/#/#Morpheus:matrix.ffslfl.net) for supporting issues. + +<!--- Provide a general summary of the issue in the Title above --> + +## Expected Behavior +<!--- Tell us what should happen --> + +## Current Behavior +<!--- Tell us what happens instead of the expected behavior --> + +## Possible Solution +<!--- Not obligatory, but suggest a fix/reason for the bug, --> + +## Steps to Reproduce +<!--- Provide a link to a live example, or an unambiguous set of steps to --> +<!--- reproduce this bug. Include code to reproduce, if relevant --> +1. +2. +3. +4. + +## Context (Environment) +<!--- How has this issue affected you? What are you trying to accomplish? --> +<!--- Providing context helps us come up with a solution that is most useful in the real world --> + +<!--- Provide a general summary of the issue in the Title above --> + +## Detailed Description +<!--- Provide a detailed description of the change or addition you are proposing --> + +## Possible Implementation +<!--- Not obligatory, but suggest an idea for implementing addition or change --> +\ No newline at end of file diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md @@ -0,0 +1,90 @@ +# Contributing + +When contributing to this repository, please first discuss the change you wish to make via issue, +[matrix](https://matrix.to/#/#Morpheus:matrix.ffslfl.net), or any other method with the owners of this repository before making a change. + +Please note we have a code of conduct, please follow it in all your interactions with the project. + +## Pull Request Process + +1. Ensure any install or build dependencies are removed before the end of the layer when doing a + build. +2. Update the README.md with details of changes to the interface, this includes new environment + variables, useful file locations. +<!--3. You may merge the Pull Request in once you have the sign-off of two other developers, or if you + do not have permission to do that, you may request the second reviewer to merge it for you. --> + +## Code of Conduct + +### Our Pledge + +In the interest of fostering an open and welcoming environment, we as +contributors and maintainers pledge to making participation in our project and +our community a harassment-free experience for everyone, regardless of age, body +size, disability, ethnicity, gender identity and expression, level of experience, +nationality, personal appearance, race, religion, or sexual identity and +orientation. + +### Our Standards + +Examples of behavior that contributes to creating a positive environment +include: + +* Using welcoming and inclusive language +* Being respectful of differing viewpoints and experiences +* Gracefully accepting constructive criticism +* Focusing on what is best for the community +* Showing empathy towards other community members + +Examples of unacceptable behavior by participants include: + +* The use of sexualized language or imagery and unwelcome sexual attention or +advances +* Trolling, insulting/derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or electronic + address, without explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +### Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable +behavior and are expected to take appropriate and fair corrective action in +response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or +reject comments, commits, code, wiki edits, issues, and other contributions +that are not aligned to this Code of Conduct, or to ban temporarily or +permanently any contributor for other behaviors that they deem inappropriate, +threatening, offensive, or harmful. + +### Scope + +This Code of Conduct applies both within project spaces and in public spaces +when an individual is representing the project or its community. Examples of +representing a project or community include using an official project [matrix +room](https://matrix.to/#/#Morpheus:matrix.ffslfl.net), posting via an official social media account, or acting as an appointed +representative at an online or offline event. Representation of a project may be +further defined and clarified by project maintainers. + +### Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported by contacting the project team at "info [at] nordgedanken [dot] de". All +complaints will be reviewed and investigated and will result in a response that +is deemed necessary and appropriate to the circumstances. The project team is +obligated to maintain confidentiality with regard to the reporter of an incident. +Further details of specific enforcement policies may be posted separately. + +Project maintainers who do not follow or enforce the Code of Conduct in good +faith may face temporary or permanent repercussions as determined by other +members of the project's leadership. + +### Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, +available at [http://contributor-covenant.org/version/1/4][version] + +[homepage]: http://contributor-covenant.org +[version]: http://contributor-covenant.org/version/1/4/ +\ No newline at end of file diff --git a/README.md b/README.md @@ -1,11 +1,33 @@ # Morpheus -[![CircleCI](https://circleci.com/gh/Nordgedanken/Morpheus.svg?style=svg)](https://circleci.com/gh/Nordgedanken/Morpheus) [![Build status](https://ci.appveyor.com/api/projects/status/a0ke0029ely9w7hu?svg=true)](https://ci.appveyor.com/project/MTRNord/neo) +[![CircleCI branch](https://img.shields.io/circleci/project/github/Nordgedanken/Morpheus/master.svg)](https://circleci.com/gh/Nordgedanken/Morpheus) [![Build status](https://ci.appveyor.com/api/projects/status/a0ke0029ely9w7hu?svg=true)](https://ci.appveyor.com/project/MTRNord/neo) + +_Appveyor CI is known to be broken_ + +--- A Matrix client written in Go-QT -# How to build +## Contributing - Matrix Room +Join the Matrix Room at [#Morpheus:matrix.ffslfl.net](https://matrix.to/#/#Morpheus:matrix.ffslfl.net) +Read the [Contribution Guideline](CONTRIBUTING.md) + +## How to build +### Prerequisites +1. https://github.com/therecipe/qt + * Follow https://github.com/therecipe/qt/wiki/Installation +2. Clone this repo by doing `go get -u github.com/Nordgedanken/Morpheus` + +### Build +1. Run `qtdeploy build desktop` inside `$GOPATH/src/github.com/Nordgedanken/Morpheus` +2. Run the Application from within `deploy/**` + + +## Versioning +We use [SemVer](http://semver.org/) for versioning. For the versions available, see the [tags on this repository](https://github.com/Nordgedanken/Morpheus/tags). + + +## License +This project is licensed under the GPLv3 License - see the [LICENSE](LICENSE) file for details -1. Follow https://github.com/therecipe/qt#installation -2. Run `go get -u github.com/Nordgedanken/Morpheus` to clone this Repo -3. Run `qtdeploy build desktop .` inside `$GOPATH/src/github.com/Nordgedanken/Morpheus` -4. Run the Application from within `deploy/windows` +## Acknowledgments +* Inspired by [nheko](http://github.com/mujx/nheko) diff --git a/circle.yml b/circle.yml @@ -1,19 +0,0 @@ -machine: - environment: - OS: linux - DESKTOP: true - GOROOT: /usr/local/go - GOPATH: /home/ubuntu/.go_project -dependencies: - pre: - override: - - go get -u -v github.com/therecipe/qt/cmd/... - - if [[ "$OS" == "linux" ]]; then chmod +x ./.ci/linux.sh && ./.ci/linux.sh; fi - - /home/ubuntu/.go_project/bin/qtsetup full desktop - - go get -v github.com/Nordgedanken/Morpheus/... - post: -test: - pre: - override: - - if [[ "$DESKTOP" == "true" ]]; then /home/ubuntu/.go_project/bin/qtsetup && /home/ubuntu/.go_project/bin/qtdeploy test desktop; fi - post: