meta data for this page
  •  

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
fractal [2020/06/17 16:20]
alexmitter created
fractal [2020/10/15 10:44] (current)
a-wai Update pantalaimon instructions
Line 3: Line 3:
 Fractal is a Matrix messaging app for GNOME written in Rust. Its interface is optimized for collaboration in large groups, such as free software projects. Fractal is a Matrix messaging app for GNOME written in Rust. Its interface is optimized for collaboration in large groups, such as free software projects.
  
-{{:​fractal1.png?​400|}} {{:fractal1.png?400|}} {{:​fractal3.png?​400|}} {{:​fractal4.png?​400|}}+{{:​fractal1.png?​400|}} {{:fractal2.png?400|}} {{:​fractal3.png?​400|}} {{:​fractal4.png?​400|}} 
 + 
 +====  Scale to fit: ==== 
 + 
 +App ID:  <​code>​org.gnome.Fractal [flatpak] OR fractal [apt]</​code>​ 
 +[[https://​wiki.mobian-project.org/​doku.php?​id=tweaks#​automatic-app-scaling|automatic-app-scaling]] 
 + 
 +====  Phone Compatibility:​ ==== 
 + 
 + 5 of 5 Points, fully optimized
  
 ====  How to install: ==== ====  How to install: ====
 +
 +== APT: ==
 +<​code>​
 +sudo apt update
 +sudo apt install fractal
 +</​code>​
  
 == Flatpak: == == Flatpak: ==
Line 11: Line 26:
 Flathub: https://​flathub.org/​apps/​details/​org.gnome.Fractal Flathub: https://​flathub.org/​apps/​details/​org.gnome.Fractal
  
-Command: flatpak install flathub org.gnome.Fractal+Command: ​ 
 +<​code>​ 
 +# You will need to trust and add the flathub repo in flatpak 
 +flatpak install flathub org.gnome.Fractal 
 +</​code>​ 
 + 
 +=== Website: === 
 + ​https://​wiki.gnome.org/​Apps/​Web 
 + 
 +=== Repo: === 
 + ​https://​gitlab.gnome.org/​GNOME/​fractal 
 + 
 + 
 +=== Known Issues: === 
 +Using the apt-version of Fractal doesn'​t remember login information. This is due to the way the Gnome Keyring works - will presumably be fixed in the future. As a workaround you can try unlocking the keyring by first starting an application that unlocks the keyring successfully (f.e. geary, epiphany - if you have saved passwords and try login to a site for which you have a saved password). 
 + 
 +=== Tips & Tricks === 
 +Fractal does currently not support E2E ([[https://​gitlab.gnome.org/​GNOME/​fractal/​-/​issues/​41|see the issue in their bug tracker]]), so encrypted chatrooms are virtually inaccessible through this client. However, you can use [[https://​github.com/​matrix-org/​pantalaimon/​|Pantalaimon]] as a proxy-server to your Fractal client. 
 + 
 +Pantalaimon works as the "good man in the middle",​ between your client and the Matrix Server. It deals with de- & encryption and forwards the unencrypted messages to Fractal (or encrypted ones to the room). This also works with media. 
 + 
 +Pantalaimon is a daemon, written in Python, that can directly run as a systemd process on Mobian.. The setup is a bit tricky however, and the [[https://​github.com/​matrix-org/​pantalaimon/​|Repository'​s notes]] do not go into great detail. 
 + 
 +=== Setting up Pantalaimon === 
 + 
 +It's recommended to do this via SSH, as it involves a lot of copying and typing. 
 + 
 +== Install Pantalaimon == 
 + 
 +''​sudo apt install pantalaimon''​ 
 + 
 +== Setting up Pantalaimon == 
 + 
 +Create a '​pantalaimon'​ folder in ~/.config 
 + 
 +''​mkdir -p ~/​.config/​pantalaimon''​ 
 + 
 +and create a file pantalaimon.conf in that folder with the following content (make sure to exchange matrix.org with your actual homeserver:​ 
 + 
 +<​code>​ 
 +[Default] 
 +# LogLevel = Debug 
 +SSL = True 
 + 
 +[local-matrix] 
 +Homeserver = https://​matrix.org 
 +ListenAddress = localhost 
 +ListenPort = 8009 
 +# UseKeyring = True 
 +# IgnoreVerification = True 
 +</​code>​ 
 + 
 +Optional lines are commented out here (#). 
 + 
 +Now you should be able to run pantalaimon by executing it ''​pantalaimon''​. 
 + 
 +== Optional: systemd service == 
 + 
 +Optional: In order to start pantalaimon automatically via systemd, copy the sample service file provided by the package (''/​usr/​share/​doc/​pantalaimon/​examples/​pantalaimon.service''​) into ''/​etc/​systemd/​user/''​. 
 + 
 +Then execute the following commands to reload the systemd daemon and start the service: 
 +<​code>​ 
 +systemctl --user daemon-reload 
 +systemctl --user enable --now pantalaimon.service 
 +</​code>​ 
 + 
 +== Log In == 
 + 
 +In Fractal, set your homeserver to ''​http://​localhost:​8009''​ (if you set a different ListenPort, you need to adjust it here, too) and login with your username and password. To access encrypted messages from other devices/​sessions,​ you will need to establish trust on your other logged in Matrix clients. 
 + 
 +== Troubleshooting:​ CPU spikes == 
 + 
 +When using Pantalaimon through the systemd service, it is always running in the background, even if you do not actively using Fractal (or any other Matrix client). This can become a CPU hog, if you receive a lot of encrypted messages or media and drain your battery. There is no concrete solution to this, but you can work around it by limiting the CPU power dedicated to the Pantalaimon process: 
 + 
 +Install the cpulimit tool: 
 +<​code>​ 
 +sudo apt install cpulimit 
 +</​code>​ 
 + 
 +Edit your systemd service file, described above to: 
 +<​code>​ 
 +[Unit] 
 +Description=Pantalaimon E2E Matrix reverse proxy 
 + 
 +[Service] 
 +ExecStart=/​usr/​bin/​cpulimit --limit=25 --lazy --foreground -- /​usr/​bin/​pantalaimon 
 + 
 +[Install] 
 +WantedBy=default.target 
 +</​code>​ 
 + 
 +Then reload the systemd daemon and restart the service: 
 +<​code>​ 
 +systemctl --user daemon-reload 
 +systemctl --user restart pantalaimon.service 
 +</​code>​