You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: REQUIREMENTS.md
+25-17Lines changed: 25 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,41 +4,40 @@ None
4
4
5
5
## Software Requirements
6
6
7
-
> This demo can be run with Docker or Nix. If you intend to use one of them, you may skip to the last section in this document.
8
-
9
7
We do not require a certain operating system or prepared environment.
10
8
For downloading this demo, we recommend Git (installing Git is explained in [this article](https://github.com/git-guides/install-git)).
11
-
The setup is tested on Windows 10, WSL2, Manjaro, Ubuntu, NixOS and MacOS Monterey.
9
+
The setup is tested on Windows 10, WSL2, Manjaro, and NixOS.
10
+
11
+
**Executing the demo consists of two steps**: _building the project_ and _running the demo_.
12
+
Each step has its own software requirements.
13
+
14
+
15
+
### Requirements for Building
16
+
17
+
This demo can be built _either_ manually _or_ using Docker _or_ using Nix.
18
+
You may choose one of these setups.
19
+
If you intend to use this project to develop your own library or application based on DiffDetective, we recommend the manual build.
20
+
21
+
#### Requirements for Building Manually
12
22
13
-
### Toolchain
14
23
This demo is a Maven project based on Java 17.
15
24
16
25
To build the demo, a [Java development toolkit](https://www.oracle.com/java/technologies/downloads/) of version 17 or higher, and [Maven](https://maven.apache.org/) are required.
17
26
18
-
To run the demo, graphviz should be installed. You may find installation instructions for graphviz [here](https://graphviz.org/download/).
19
-
You may run the demo without graphviz but the demo will print an error to the terminal and DiffDetective cannot compute a layout for visualizing graphs.
20
-
So the GUI may appear differently as in the screencast (see _Expected Output_ section in [INSTALL.md](INSTALL.md)).
21
-
22
-
### Java Dependencies
23
27
The demo has few dependencies, most of which will be handled automatically by Maven.
24
28
The dependencies are documented in the Maven build file ([pom.xml](pom.xml)).
25
29
The only dependency that must be installed manually is our tool and library DiffDetective, which is also a Java Maven project.
26
30
Installing DiffDetective follows the default maven workflow and is explained on the [DiffDetective website](https://variantsync.github.io/DiffDetective/) and README.
27
31
28
-
## Virtualization: Docker or Nix
29
-
For easy replication, this demo also comes with a Nix package and a Docker container, which can be used on any system supporting Nix or Docker, respectively.
30
-
The Nix and Docker setup will take care of all requirements and dependencies (including DiffDetective) and will build the demo to a single runnable JAR file.
31
-
_Note_: Nix and Docker are neither required by the demo nor DiffDetective! They only serve to ease the setup for you.
32
-
33
-
### Docker
32
+
#### Requirements for Building with Docker
34
33
35
34
How to install Docker depends on your operating system:
36
35
37
36
-_Windows or Mac_: You can find download and installation instructions [here](https://www.docker.com/get-started).
38
37
-_Linux Distributions_: How to install Docker on your system, depends on your distribution. The chances are high that Docker is part of your distributions package database.
39
38
Docker's [documentation](https://docs.docker.com/engine/install/) contains instructions for common distributions.
40
39
41
-
### Nix
40
+
#### Requirements for Building with Nix
42
41
43
42
How to install Nix, also depends on your operating system.
44
43
Head to the [NixOS website](https://nixos.org/download/) and follow the installation instructions for your system.
@@ -49,4 +48,13 @@ Instead, you can use Nix from within Windows Subsystem for Linux (WSL2).
49
48
However, we do not recommend using Nix on Windows, except if you are already familiar with WSL2, Nix, and XServers.
50
49
We recommend using Docker or a manual setup instead.
51
50
Running the Demo from within WSL2 requires an XServer.
52
-
We recommend [VcXsrv](https://sourceforge.net/projects/vcxsrv/).
51
+
We recommend [VcXsrv](https://sourceforge.net/projects/vcxsrv/).
52
+
53
+
### Requirements for Running
54
+
55
+
To run the demo, a [Java development toolkit](https://www.oracle.com/java/technologies/downloads/) of version 17 or higher is required.
56
+
57
+
As an _optional_ dependency, running the demo uses graphviz.
58
+
You may find installation instructions for graphviz [here](https://graphviz.org/download/).
59
+
You may run the demo without graphviz, in which case the demo will print an error to the terminal and DiffDetective cannot compute a layout for visualizing graphs.
60
+
In this case, the GUI may appear differently as in the screencast (see _Expected Output_ section in [INSTALL.md](INSTALL.md)).
0 commit comments