adbe2d88ee309d479a2a9f477ac00b749f94d368
				
			
			
		
	Also add a copy() method to models, and make them able to not have a sync_id (in which case they won't send pyotherside events).
Mirage
Dependencies setup
From your distribution's package manager, install:
Qt 5.12+, including:
- 
qt5-declarative-devel 
- 
qt5-quickcontrols2-devel 
- 
qt5-svg-devel 
- 
qt5-graphicaleffects 
- 
qt5-qmake 
- 
qt5-devel 
- 
python3 
- 
python3-devel 
- 
olm-python3 >= 3.1 
Make sure that the right version of Qt is selected and compiler flags are correctly set:
export QT_SELECT=5
export CFLAGS="-march=native -O2 -pipe"
export CXXFLAGS="$CFLAGS"
export MAKEFLAGS="$(nproc)"
Install pyotherside:
git clone https://github.com/thp/pyotherside
cd pyotherside
make clean; qmake && make && sudo make install
After this, verify the permissions of the installed plugin files. To ensure that they're correctly set:
sudo chmod -R 755 /usr/lib/qt5/qml/io
sudo chmod 644 /usr/lib/qt5/qml/io/thp/pyotherside/*
sudo chmod 755 /usr/lib/qt5/qml/io/thp/pyotherside/*.so
Install the Python 3 dependencies:
pip3 install --user -Ur requirements.txt
Optional dependency for performance improvements:
pip3 install --user -U uvloop==0.13.0
Building
git clone --recursive <TODO>
cd mirage
qmake mirage.pro && make && sudo make install
After this if no errors happened, run mirage.
If you get a version mismatch error related to cffi, try:
pip3 install --user --upgrade --force-reinstall cffi
Description
				
					Languages
				
				
								
								
									QML
								
								64.4%
							
						
							
								
								
									Python
								
								32.2%
							
						
							
								
								
									C++
								
								2.8%
							
						
							
								
								
									QMake
								
								0.4%
							
						
							
								
								
									Shell
								
								0.2%
							
						
					