Skip to content

Commit

Permalink
feat: add developing OpenWRT in QEMU with Eclipse Che
Browse files Browse the repository at this point in the history
Signed-off-by: Oleksii Orel <[email protected]>
  • Loading branch information
olexii4 committed May 9, 2024
1 parent 8dc7da5 commit 8d0b42b
Showing 1 changed file with 49 additions and 0 deletions.
49 changes: 49 additions & 0 deletions _posts/2024-05-08-fuse-storage-driver.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
---
title: Developing OpenWRT in QEMU with Eclipse Che
layout: post
author: Oleksii Orel
description: >-
Developing OpenWRT helloworld package in QEMU machine emulator and virtualizer with Eclipse Che.
categories: []
keywords: ['openwrt', 'quemu', 'gdb', 'quemu', 'developing ', 'workspace']
slug: /@olexii.orel/openwrt-helloworld-package
---

OpenWrt is a highly extensible GNU/Linux distribution for embedded devices (typically wireless routers). Unlike many other distributions for routers, OpenWrt is built from the ground up to be a full-featured, easily modifiable operating system for embedded devices. In practice, this means that you can have all the features you need with none of the bloat, powered by a modern Linux kernel.

We can create and develop OpenWRT Cmake packages in Eclipse Che. In this article, we will create a simple "Hello, World!" package for OpenWRT and run it in a QEMU machine emulator and virtualizer.

In this blog post we will review developing OpenWRT in QEMU with Eclipse Che in 4 parts:

<<part1>>

<<part2>>

<<part3>>

<<part4>>


NOTE: To help illustrate this blog post we will use an https://github.com/che-incubator/openwrt-helloworld-package.git[OpenWrt HelloWorld package].

## PART 1: Prepare and install all package definitions [[part1]]

After creating a new workspace from https://github.com/che-incubator/openwrt-helloworld-package.git[OpenWrt HelloWorld package] in Eclipse Che, we need to link the target package and install all the necessary packages to build OpenWRT. We can do this by running the following commands(tasks) from the devfile.yaml file:
1. task: `Link helloworld package`
2. task: `Copy diff-config to OpenWRT`
3. task: `Install all package definitions`

## PART 2: Build OpenWRT [[part2]]

After installing all the necessary packages, we can build OpenWRT by running the following command(task) from the devfile.yaml file:
1. task: `Build all packages and the kernel`

NOTE: The build process may take a while.

## PART 3: Run OpenWRT in QEMU [[part3]]
1. task: `Running OpenWRT in a QEMU VM`

After running the task, we can see the OpenWRT booting in the QEMU machine emulator and virtualizer. We can access the OpenWRT console by running the following command(task) from the devfile.yaml file:
2. task: `Access OpenWRT console`

Thank you for reading.

0 comments on commit 8d0b42b

Please sign in to comment.