@@ -8,13 +8,14 @@ Diffuse depends on these projects:
88* PyPi
99* Cairo and GObject Introspection development headers
1010* Meson
11- * Flatpak and Flatpak builder
11+ * Flatpak and Flatpak builder (Linux only)
1212
13- ### Install the distribution dependencies
13+ ## Install the dependencies
1414
15- It's a bit difficult to get the command lines for all the distributions and
16- their releases, but it should be enough to find the packages on other
17- distributions.
15+ ### Install the system dependencies
16+
17+ It's a bit difficult to get the command lines for all the systems, but these
18+ examples should be enough to find the packages on most systems.
1819
1920<details >
2021 <summary>Debian/Ubuntu</summary>
@@ -32,7 +33,19 @@ _Note: Tested on Debian 11 (Buster) and Ubuntu 20.04 (Focal)_
3233sudo dnf install python-pip cairo-devel cairo-gobject-devel meson flatpak flatpak-builder
3334```
3435
35- _ Note: Tested on Fedora 34_
36+ _ Note: Tested on Fedora 36_
37+ </details >
38+
39+ <details >
40+ <summary>Mac OS</summary>
41+
42+ On Mac, all dependencies can be installed using [ Homebrew] ( https://docs.brew.sh/ ) :
43+
44+ ``` sh
45+ brew install meson python3 py3cairo pygobject3 gtk+3 librsvg
46+ ```
47+
48+ _ Note: Tested on macOS 12.5 (Monterey)_
3649</details >
3750
3851### Install the project dependencies
@@ -49,34 +62,42 @@ For developer tools, run this one instead (it includes requirements.txt):
4962pip install -r requirements.dev.txt
5063```
5164
52- ## Setup on Linux
65+ ## Setup
66+
67+ ### Setup on Linux using Flatpak
5368
54- ### Build, test and install using Flatpak
69+ #### Build, test and install
5570
56- To install Diffuse locally:
71+ To build, test and install Diffuse locally:
5772
5873``` sh
5974flatpak install runtime/org.gnome.Sdk/$( uname -p) /42
6075flatpak-builder --user --install build-flatpak io.github.mightycreak.Diffuse.yml
6176```
6277
78+ #### Run
79+
6380To run Diffuse through Flatpak:
6481
6582``` sh
6683flatpak run io.github.mightycreak.Diffuse
6784```
6885
86+ #### Uninstall
87+
6988To uninstall Diffuse:
7089
7190``` sh
7291flatpak remove io.github.mightycreak.Diffuse
7392```
7493
75- ### Build, test and install using Meson
94+ ### Setup on Linux using Meson
95+
96+ #### Build and test
7697
77- Diffuse build system is meson .
98+ Diffuse is using Meson as its build system .
7899
79- To compile and test Diffuse:
100+ To build and test Diffuse:
80101
81102``` sh
82103meson setup build
@@ -85,36 +106,81 @@ meson compile
85106meson test
86107```
87108
109+ #### Install on system and run
110+
88111To install Diffuse on your system (e.g. ` /usr/local/ ` ):
89112
90113``` sh
91114meson install # requires admin privileges
115+ ```
116+
117+ To run Diffuse:
92118
93- # Run Diffuse
119+ ``` sh
94120diffuse
95121```
96122
97- To install Diffuse on a custom directory (e.g. ` ~/bin/diffuse ` ):
123+ #### Install in a custom directory and run
124+
125+ Meson allows to change the default installation directories, see
126+ [ command-line documentation] ( https://mesonbuild.com/Commands.html#configure ) .
127+
128+ To install Diffuse in a custom directory (e.g. ` ~/bin/diffuse ` ):
98129
99130``` sh
100131meson install --destdir ~ /bin/diffuse
132+ ```
101133
102- # Run Diffuse
134+ To run Diffuse:
135+
136+ ``` sh
137+ export PYTHONPATH=$HOME /bin/diffuse/usr/local/share/diffuse
103138cd ~ /bin/diffuse/usr/local/bin
104- PYTHONPATH= $HOME /bin/diffuse/usr/local/share/diffuse ./diffuse
139+ ./diffuse
105140```
106141
107- To uninstall diffuse afterwards:
142+ #### Uninstall
143+
144+ To uninstall Diffuse afterwards:
108145
109146``` sh
110147sudo ninja uninstall -C build
111148sudo rm -v /usr/local/share/locale/* /LC_MESSAGES/diffuse.mo
112149```
113150
114- Meson allows to change the default installation directories, see
115- [ command-line documentation] ( https://mesonbuild.com/Commands.html#configure ) .
151+ ### Setup on Mac OS
152+
153+ #### Build and test
154+
155+ Diffuse is using Meson as its build system.
156+
157+ To build and test Diffuse:
158+
159+ ``` sh
160+ meson setup build
161+ cd build
162+ meson compile
163+ meson test
164+ ```
165+
166+ #### Install on system and run
167+
168+ To install Diffuse on your system (e.g. ` /usr/local/ ` ):
169+
170+ ``` sh
171+ meson install # requires admin privileges
172+ ```
173+
174+ To run Diffuse:
175+
176+ ``` sh
177+ diffuse
178+ ```
179+
180+ _ Note: The ` diffuse ` command can be used to launch Diffuse as a native Mac app_
181+ _ that is installed into ` /Applications/Diffuse.app ` ._
116182
117- ## Setup on Windows
183+ ### Setup on Windows (deprecated)
118184
119185_ Note:_ The Windows port is not maintained and would need some love.
120186Contributions are very welcome! 😉
0 commit comments