diff --git a/README.md b/README.md index 0a0f7b85..5685b65f 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,9 @@ -# Mirage - -[![Latest release](https://img.shields.io/github/v/release/mirukana/mirage)](https://github.com/mirukana/mirage/releases) +# Moment +https://img.shields.io/gitlab/v/release/mx-moment/moment +[![Latest release](https://img.shields.io/gitlab/v/release/mx-moment/moment)](https://gitlab.com/mx-moment/moment/-/releases) [![Built with matrix-nio](https://img.shields.io/badge/built%20with-matrix--nio-brightgreen)](https://github.com/poljar/matrix-nio) -[![#mirage-client:matrix.org](https://img.shields.io/matrix/mirage-client:matrix.org?color=blueviolet)](https://matrix.to/#/#mirage-client:matrix.org) +[![#moment-client:matrix.org](https://img.shields.io/matrix/moment-client:matrix.org?color=blueviolet)](https://matrix.to/#/#moment-client:matrix.org) +[![mx-moment.xyz](https://img.shields.io/website?url=https%3A%2F%2Fmx-moment.xyz)](https://mx-moment.xyz) [Features](#currently-implemented-features) ⬥ [Installation](docs/INSTALL.md) ⬥ @@ -16,6 +17,9 @@ A fancy, customizable, keyboard-operable [Matrix](https://matrix.org/) chat client for encrypted and decentralized communication. Written in Qt/QML and Python, **currently in alpha**. +Moment is based on [Mirage](https://github.com/mirukana/mirage), +see differences [here](docs/MIRAGEDIFF.md). + ![Chat screenshot](docs/screenshots/01-chat.png?raw=true) ## Currently Implemented Features @@ -88,6 +92,7 @@ Written in Qt/QML and Python, **currently in alpha**. - [Configuration](docs/CONFIG.md) - [Theming](docs/THEMING.md) - [Contributing](docs/CONTRIBUTING.md) +- [Website](https://mx-moment.xyz) ## Screenshots diff --git a/docs/CONFIG.md b/docs/CONFIG.md index 97b174cf..6a124d8f 100644 --- a/docs/CONFIG.md +++ b/docs/CONFIG.md @@ -9,11 +9,11 @@ On Linux: -- `$XDG_CONFIG_HOME/mirage` if the `XDG_CONFIG_HOME` environment variable is - set, else `~/.config/mirage` for config files -- `$XDG_DATA_HOME/mirage` if that variable is set, else `~/.local/share/mirage` +- `$XDG_CONFIG_HOME/moment` if the `XDG_CONFIG_HOME` environment variable is + set, else `~/.config/moment` for config files +- `$XDG_DATA_HOME/moment` if that variable is set, else `~/.local/share/moment` for user data -- `$XDG_CACHE_HOME/mirage` if that variable is set, else `~/.cache/mirage` +- `$XDG_CACHE_HOME/moment` if that variable is set, else `~/.cache/moment` for cache data For Flatpak installations: @@ -22,8 +22,9 @@ For Flatpak installations: - `~/.var/app/io.github.mirukana.mirage/data/mirage` for user data - `~/.var/app/io.github.mirukana.mirage/cache/mirage` for cache data + These locations can be overriden with environment variables, see -`mirage --help`. +`moment --help`. The user data folder contains saved encryption data, interface states and [themes](THEMING.md), while the cache contains downloaded files and thumbnails. @@ -38,8 +39,8 @@ The default `settings.py`, used when no user-written file exists, documents all the possible options and can be found at: - [`src/config/settings.py`][1] in this repository -- `/usr/local/share/examples/mirage/settings.py` or - `/usr/share/examples/mirage/settings.py` on Linux installations +- `/usr/local/share/examples/moment/settings.py` or + `/usr/share/examples/moment/settings.py` on Linux installations - `~/.local/share/flatpak/app/io.github.mirukana.mirage/current/active/files/share/examples/mirage/settings.py` for per-user Flatpak installations - `/var/lib/flatpak/app/io.github.mirukana.mirage/current/active/files/share/examples/mirage/settings.py` for system-wide Flatpak installations @@ -75,10 +76,10 @@ You can also manually trigger a reload by updating the file's last change timestamp, e.g. with the `touch` command: ```sh -touch ~/.config/mirage/settings.py +touch ~/.config/moment/settings.py ``` -[1]: https://github.com/mirukana/mirage/tree/master/src/config/settings.py +[1]: https://gitlab.com/mx-moment/moment/-/blob/main/src/config/settings.py ## accounts.json diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index 9c4749b5..1791bef7 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -14,15 +14,16 @@ ## Issues -[Issues](https://github.com/mirukana/mirage/issues) on GitHub should be used to +[Issues](https://gitlab.com/mx-moment/moment/-/issues) on GitLab should be used to ask questions, report problems, request new features, -or discuss potential changes before creating pull requests. +or discuss potential changes before creating pull requests. +We also pay attention to [Mirage issues on GitHub](https://github.com/mirukana/mirage/issues). Before opening new issues, please search for any already open or closed issue related to your problem, in order to prevent duplicates. -You can also join us on the -[#mirage-client:matrix.org](https://matrix.to/#/%23mirage-client:matrix.org) +You can also join us in the +[#moment-client:matrix.org](https://matrix.to/#/%23moment-client:matrix.org) room for questions and discussions. @@ -30,12 +31,12 @@ room for questions and discussions. For changes outside of simple bug/typo/formatting fixes, it is strongly recommended to first discuss your ideas in a related issue or in -[#mirage-client:matrix.org](https://matrix.to/#/%23mirage-client:matrix.org). +[#moment-client:matrix.org](https://matrix.to/#/%23moment-client:matrix.org). New changes are merged to the -[`dev` branch](https://github.com/mirukana/mirage/tree/dev) first. +[`dev` branch](https://gitlab.com/mx-moment/moment/-/tree/dev) first. Once a new version of the application is released, -the current `dev` is merged into the main `master` branch. +the current `dev` is merged into the main `main` branch. By sending your changes, you agree to license them under the LGPL 3.0 or later. @@ -46,9 +47,9 @@ clone your fork and switch to a new branch based on `dev`, in which you will make your changes: ```sh -git clone --recursive https://github.com/yourUsername/mirage -cd mirage -git remote add upstream https://github.com/mirukana/mirage +git clone --recursive https://gitlab.com/yourUsername/moment +cd moment +git remote add upstream https://gitlab.com/mx-moment/moment git fetch upstream git checkout upstream/dev git branch example-branch-name @@ -58,7 +59,7 @@ git checkout example-branch-name Test and commit your changes according to the [commit guidelines](#commit-guidelines), and `git push` to your fork's repo. You will then be able to make a pull request by going -to the [main repo](https://github.com/mirukana/mirage). +to the [main repo](https://gitlab.com/mx-moment/moment). Once your pull request is merged, you can update `dev`, and delete your GitHub and local branch: @@ -282,9 +283,6 @@ adding instructions to the [INSTALL.md](INSTALL.md) are welcome. Some suggestions when creating packages: -- As the `mirage` name is sometimes already taken by other software, - prefer naming your package `mirage-im` - - Among the dependencies from the `submodules` directory, `hsluv-c` is the only one that is still needed for building. The other folders are kept to allow building past versions of the diff --git a/docs/INSTALL.md b/docs/INSTALL.md index b12b6832..cb1ea5be 100644 --- a/docs/INSTALL.md +++ b/docs/INSTALL.md @@ -25,7 +25,7 @@ but compiling on Windows and macOS should be possible with the right tools. - [Void Linux / xbps](#void-linux--xbps) - [Installing PyOtherSide manually](#installing-pyotherside-manually) - [Installing libolm manually](#installing-libolm-manually) - - [Installing or updating Mirage](#installing-or-updating-mirage) + - [Installing or updating Moment](#installing-or-updating-moment) - [Common issues](#common-issues) - [cffi version mismatch](#cffi-version-mismatch) - [Type XYZ unavailable](#type-xyz-unavailable) @@ -40,7 +40,7 @@ see [manual installation](#manual-installation). Packages other than the AppImage and Flatpak are not maintained by the Mirage authors, and thus might be outdated. -#### AppImage +#### AppImage (Leftover instructions from Mirage; not supported for Moment) For **x86 64bit glibc-based systems**, Mirage is available as an AppImage on the [release page](https://github.com/mirukana/mirage/releases). @@ -53,7 +53,7 @@ released in April 2016 or later. [How to start AppImages](https://docs.appimage.org/introduction/quickstart.html#how-to-run-an-appimage) (TL;DR: `chmod +x Mirage-*.AppImage && ./Mirage-*.AppImage`) -#### Flatpak +#### Flatpak (Leftover instructions from Mirage; not supported for Moment) Mirage is also available as a Flatpak. @@ -85,78 +85,6 @@ If your architecture is not listed on the release page, clone the repository and see [packaging/flatpak/README.md](packaging/flatpak/README.md) to build the package on your machine. -#### Alpine Linux / postmarketOS - -If you are on the Edge channel of Alpine Linux or postmarketOS, Mirage can be -installed right from the testing repositry: - -```sh -apk add mirage -``` - -If you are unsure about what Edge is and want to read more about it, you can do -so on the [Alpine Wiki](https://wiki.alpinelinux.org/wiki/Edge). - -#### Arch Linux - -AUR packages for the -[latest stable release](https://aur.archlinux.org/packages/matrix-mirage/) and -[git `dev` branch](https://aur.archlinux.org/packages/matrix-mirage-git/) are -available. - -Installing the release version with a AUR helper, e.g. -[yay](https://github.com/Jguer/yay): - -```sh -yay -S matrix-mirage -``` - -#### Debian - -Requires [Debian Testing](https://wiki.debian.org/DebianTesting). -To install the package: - -```sh -apt update -apt install matrix-mirage -``` - -#### Gentoo - -Available in the [src_prepare overlay](https://gitlab.com/src_prepare/src_prepare-overlay) -- [releases](https://gitlab.com/src_prepare/src_prepare-overlay/-/tree/master/net-im/mirage) -- [git dev](https://gitlab.com/src_prepare/src_prepare-overlay/-/blob/master/net-im/mirage/mirage-9999.ebuild) - -Installing Mirage: - -1. [Add the overlay](https://gitlab.com/src_prepare/src_prepare-overlay#adding-the-overlay) -2. [Unmask](https://wiki.gentoo.org/wiki/Knowledge_Base:Unmasking_a_package) `net-im/mirage` -3. Run `emerge net-im/mirage` - -#### Nix - -Requires the unstable channel, to add it: - -```sh -nix-channel --add https://nixos.org/channels/nixpkgs-unstable -nix-channel --update -``` - -To install the package: - -```sh -nix-env -iA nixpkgs.mirage-im -``` - -#### OpenMandriva Lx - -Requires [Unstable or Rolling][1]. To install the package: - -```sh -sudo dnf install matrix-mirage -``` - -[1]: https://openmandriva.net/wiki/en/index.php?title=OpenMandriva_Release_Plan_and_Repositories#Release_Plan ## Manual Installation @@ -169,7 +97,7 @@ splits development headers into their own packages. To enable X11-specific features on Linux, **libX11** and **libXScrnSaver** / **libXss** are needed. The requirements can be disabled by adding `CONFIG+=no-x11` to the -`qmake mirage.pro` command. +`qmake moment.pro` command. For the Pillow Python package, these dependencies are recommended to support all common image formats: @@ -337,29 +265,29 @@ sudo make install ``` -### Installing or updating Mirage +### Installing or updating Moment After following the above sections instructions depending on your system; clone the repository, initalize the submodules, install the python dependencies, compile and install: ```sh -git clone https://github.com/mirukana/mirage -cd mirage +git clone https://gitlab.com/mx-moment/moment +cd moment git pull git submodule update --init submodules/* pip3 install --user -Ur requirements.txt -qmake mirage.pro +qmake moment.pro make sudo make install ``` To compile without the X11-specific dependencies and features on Linux, -run `qmake mirage.pro CONFIG+=no-x11` instead of `qmake mirage.pro`. +run `qmake moment.pro CONFIG+=no-x11` instead of `qmake moment.pro`. -If everything went fine, run `mirage` to start. +If everything went fine, run `moment` to start. ### Common Issues diff --git a/docs/KEYBINDINGS.md b/docs/KEYBINDINGS.md index 13034e81..863322f9 100644 --- a/docs/KEYBINDINGS.md +++ b/docs/KEYBINDINGS.md @@ -1,4 +1,4 @@ -# Mirage default keybindings list +# Moment default keybindings list Keybindings as defined in [the default configuration file](src/config/settings.py#L218). More about configuration [here](docs/CONFIG.md). @@ -20,7 +20,7 @@ Key | Function F1 | QML developer console Shift + F1 | Python debugger Alt + F1 | Python remote debugger -Ctrl + Q | Quit Mirage * +Ctrl + Q | Quit Moment * ## Scrolling bindings diff --git a/docs/PCN.md b/docs/PCN.md index 0c62daed..edcc3c1a 100644 --- a/docs/PCN.md +++ b/docs/PCN.md @@ -102,7 +102,7 @@ for example `self.include_builtin("config/settings.py")` refers to The sections and properties from the included file will be recursively merged, see [Including User Files](#including-user-files) for an example. -[1]: https://github.com/mirukana/mirage/tree/master/src/config/settings.py +[1]: https://gitlab.com/mx-moment/moment/-/blob/main/src/config/settings.py ### Including User Files diff --git a/docs/THEMING.md b/docs/THEMING.md index 675513b1..e344c4ee 100644 --- a/docs/THEMING.md +++ b/docs/THEMING.md @@ -4,8 +4,8 @@ A default theme from this repository can be copied to use as a base and edit, for example: ```sh - cp mirage/src/themes/Foliage.qpl \ - "${XDG_DATA_HOME:-$HOME/.local/share}/mirage/themes/MyTheme.qpl" + cp moment/src/themes/Foliage.qpl \ + "${XDG_DATA_HOME:-$HOME/.local/share}/moment/themes/MyTheme.qpl" ``` Or for Flatpak users: @@ -49,14 +49,14 @@ You can manually trigger a reload by updating the file's last change timestamp, e.g. with the `touch` command: ```sh -touch ~/.config/mirage/settings.py +touch ~/.config/moment/settings.py ``` **Warnings**: -- The current file format forces all theme to have all properties +- The current file format forces themes to have all properties defined, instead of being able to only specify the ones to override from the - default theme. Keep this in mind when updating Mirage. + default theme. Keep this in mind when updating Moment. - Themes will soon be moved to the PCN format, that was introduced in 0.7.0 for user config files.