Skip to content

Commit cf84ff1

Browse files
committed
Mention sample program execution with Linux framebuffer and input system
1 parent 500acd1 commit cf84ff1

File tree

1 file changed

+29
-5
lines changed

1 file changed

+29
-5
lines changed

README.md

Lines changed: 29 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -60,30 +60,54 @@ benefiting the entire application stack.
6060

6161
## Build and Verify
6262

63+
### Prerequisites
64+
6365
`Mado` is built with a minimalist design in mind. However, its verification
6466
relies on certain third-party packages for full functionality and access to all
65-
its features. To ensure proper operation, the development environment should
66-
have the [SDL2 library](https://www.libsdl.org/), [libjpeg](https://www.ijg.org/), and [libpng](https://github.com/pnggroup/libpng) installed.
67+
its features. We encourage the development environment to be installed with all optional
68+
packages, including [libjpeg](https://www.ijg.org/), [libpng](https://github.com/pnggroup/libpng),
69+
and the [SDL2 library](https://www.libsdl.org/).
6770
* macOS: `brew install sdl2 jpeg libpng`
6871
* Ubuntu Linux / Debian: `sudo apt install libsdl2-dev libjpeg-dev libpng-dev`
6972

70-
Configure via [Kconfiglib](https://pypi.org/project/kconfiglib/)
73+
### Configure the demo program
74+
75+
Configure via [Kconfiglib](https://pypi.org/project/kconfiglib/), you should select either SDL
76+
video output or the Linux framebuffer.
7177
```shell
7278
$ make config
7379
```
7480

75-
Build the library and demo program.
81+
### Build the library and demo program
82+
7683
```shell
7784
$ make
7885
```
7986

80-
Run sample `Mado` program:
87+
### Run demo program with SDL backend
88+
8189
```shell
8290
$ ./demo-sdl
8391
```
8492

8593
Once the window appears, you should be able to move the windows and interact with the widgets.
8694

95+
### Run demo program with the Linux framebuffer backend
96+
97+
Normal users don't have access to `/dev/fb0` so use `sudo`:
98+
99+
```shell
100+
$ sudo ./demo-fbdev
101+
```
102+
103+
Alternatively, you can add the user to the video group to avoid typing `sudo` every time:
104+
105+
```shell
106+
$ sudo usermod -a -G video $USERNAME
107+
```
108+
109+
In addition, the framebuffer and mouse device files can be assigned via the environment variable `FRAMEBUFFER` and `MOUSE`.
110+
87111
## License
88112

89113
`Mado` is available under a MIT-style license, permitting liberal commercial use.

0 commit comments

Comments
 (0)