Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 40 additions & 11 deletions documentation/IDEasy-contribution-getting-started.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,54 @@ toc::[]

= Getting started as developer contributing to IDEasy

To begin, read through the https://github.com/devonfw/IDEasy/blob/main/documentation/IDEasy-contribution-rules-and-guidelines.adoc[Contribution Guidelines], which you should be sure to follow.

== Installation

To start developing IDEasy, you must first install it on your computer.
Therefore, simply follow the link:setup.adoc[setup] guide.
It is important to notice that this installation gives you the latest published version of IDEasy with which you can execute commands like eclipse or docker whose scripts are located inside the "${IDE_HOME}$/scripts/command, but for committing code we use a differing folder structure.

This will be addressed under xref:Contribution[Contribution].

== Setup the Development Environment

After IDEasy installation, run the following command in the terminal to create a project:

```
ide create IDEasy -
```

Next, fork the https://github.com/devonfw/ideasy[IDEasy] repository.
Steps for forking or cloning repositories, creating branches, and using Git commands can be found in the https://github.com/firstcontributions/first-contributions[first contributions guideline].
To contribute code or documentation for IDEasy, first fork the https://github.com/devonfw/ideasy[IDEasy] repository, then clone your fork into the `workspaces/main` folder in your IDEasy installation.

Navigate to the `workspaces/main` directory:

```
icd -p IDEasy -w
```

Clone your forked project into this directory:

```
git clone «forked-project-url»
```

Now you can open the project in your preferred IDE using the `ide` command.
For IntelliJ:

```
ide intellij
```

In IntelliJ, select the `pom.xml` file and right-click → **Add as Maven Project**.

*Tip:* If the Maven button is hidden or not visible, press `Alt + 7` to open the **Structure** window below the project explorer.
Scroll down in the explorer to make the `pom.xml` file appear higher, enabling the option to be clicked.
Alternatively, use the keyboard arrows to navigate to the bottom of the right-click menu.

== Contribution

To begin, read through the https://github.com/devonfw/IDEasy/blob/main/documentation/IDEasy-contribution-rules-and-guidelines.adoc[Contribution Guidelines], which you should be sure to follow.
First steps regarding forks or cloning of repos and creating branches, as well as some git commands, can be found in the https://github.com/firstcontributions/first-contributions[first contributions guideline].
To contribute code or documentation regarding IDEasy at first you need to fork the https://github.com/devonfw/ideasy[IDEasy] repository and then you can clone your fork into the folder `workspaces/main` in your IDEasy installation.
Open git-bash in the cloned fork at `workspaces/main/IDEasy` and run the following command:

```
Expand Down Expand Up @@ -74,7 +110,6 @@ The Name needs to be equal to the one of both the tool and the commandlet.
There are four available parent classes of url-updaters, that can be used.
They mainly differentiate in the way, available versions are detected.


* https://github.com/devonfw/IDEasy/blob/main/cli/src/main/java/com/devonfw/tools/ide/url/updater/GithubUrlUpdater.java[`GithubUrlUpdater`]

* https://github.com/devonfw/IDEasy/blob/main/cli/src/main/java/com/devonfw/tools/ide/url/updater/JsonUrlUpdater.java[`JsonUrlUpdater`]
Expand All @@ -96,12 +131,6 @@ Once a day, the `UpdateInitiator` will run the updaters through GitHub Actions a
Use an existing commandlet like https://github.com/devonfw/IDEasy/blob/main/cli/src/main/java/com/devonfw/tools/ide/tool/java/Java.java[Java] as a reference.
Create a sub-package and a class with the name of the tool.

TODO explain:
* Properties
* run Method
* Dependencies
* Commandlet class hierarchy

=== LICENSE

Find the license for the new tool and add the tool to the table of `Third party components` of the link:LICENSE.adoc[LICENSE].
Expand Down
101 changes: 101 additions & 0 deletions documentation/IDEasy-testing-linux-on-windows.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
:toc: macro
toc::[]
:idprefix:
:idseparator: -

= IDEasy Installation on Ubuntu in WSL2 (Windows Subsystem for Linux)

== Preparation

=== Install WSL

WSL for Windows can be installed through the Windows terminal (PowerShell, Git Bash, or CMD) using the following command:

----
wsl --install
----

For more details, refer to: https://learn.microsoft.com/en-us/windows/wsl/install[WSL Installation (Microsoft Documentation)]

=== Install Ubuntu from Microsoft Store

Download Ubuntu from the Microsoft Store:
https://apps.microsoft.com/detail/9PDXGNCFSCZV?hl=en-us&gl=DE&ocid=pdpshare[Microsoft Store]

== IDEasy Setup via Ubuntu Terminal

=== Prerequisite

Ensure `Git` is installed on your system.
Check by opening Ubuntu via Windows Terminal or directly from the Windows Start menu and running:

```
git --version
```

If `Git` is not installed, use the following command to install `git`:

```
sudo apt install git
```

=== Download and Setup IDEasy

Refer to the detailed setup guide: link:setup.adoc[Setup Instructions].

*Tip:* It is recommended to install and use Windows Terminal to manage multiple terminal instances.
First, open Ubuntu using Windows Terminal or directly from the Windows Start menu.

.Opening Ubuntu from Windows Start Menu
image::images/wsl_guide/WindowsSearch.png[WindowsSearch]

You should now be able to access the Ubuntu terminal on your system.

.Ubuntu Terminal
image::images/wsl_guide/UbuntuTerminal.png[UbuntuTerminal]

Next, open Ubuntu To install IDEasy via the opened terminal:

1. Copy the Maven link for the *latest* IDEasy release for Linux.
2. Download the file using `wget`:

```
wget «link-to-repo»
```

Verify the download with the `ls` command; the file should appear if downloaded correctly.

```
ls
```

.Download and verify files with wget and ls (with an example of link:https://github.com/devonfw/IDEasy/releases/tag/release%2F2025.11.001[2025.11.00 release])
image::images/wsl_guide/wget.png["wget"]

Create a new directory `IDEasy` and extract the downloaded file:

```
mkdir IDEasy
tar xzf «downloaded-file-name» -C IDEasy
```

This extracts the contents into the IDEasy folder.
Run the setup script inside the IDEasy folder:

```
./IDEasy/setup
```

Follow the instructions in the terminal.
After installation, reboot the system:

```
sudo reboot
```

IDEasy is now installed on your Ubuntu system.
A new directory called `projects` will be automatically created.

== IDEasy Installation for Developers

To set up the development environment, simply follow the guide at link:IDEasy-contribution-getting-started.adoc#installation[Getting started as developer contributing to IDEasy].
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added documentation/images/wsl_guide/WindowsSearch.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added documentation/images/wsl_guide/wget.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.