diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index bba4180..0424753 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,14 +1,13 @@ -build-buffyboard: +build-and-test-buffyboard: image: alpine:3.19 tags: - saas-linux-small-amd64 script: - - apk -q add git build-base meson linux-headers inih-dev libinput-dev eudev-dev + - apk -q add git bash build-base meson linux-headers inih-dev libinput-dev eudev-dev - git submodule init - git submodule update - cd buffyboard - - meson _build - - meson compile -C _build + - ./test/test-all.sh build-and-test-unl0kr-with-drm: image: alpine:3.19 @@ -31,3 +30,13 @@ build-and-test-unl0kr-without-drm: - git submodule update - cd unl0kr - ./test/test-without-drm.sh + +build-iskey: + image: alpine:3.19 + tags: + - saas-linux-small-amd64 + script: + - apk -q add git bash build-base meson linux-headers libevdev-dev + - cd iskey + - meson setup _build + - meson compile -C _build diff --git a/CHANGELOG.md b/CHANGELOG.md index cec4697..6313c55 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,15 +10,21 @@ If a change only affects particular applications, they are listed in parentheses ## Unreleased +- feat: Add adwaita-dark theme (thanks @topjor) +- feat: Add Nord themes + +## 3.1.0 (2024-04-10) + - feat(buffyboard): Handle input device connection/disconnection at runtime; adds new dependency libudev - feat(buffyboard): Allow choosing theme via config and add all themes from unl0kr - feat(buffyboard): Add fbdev force-refresh quirk via config - feat(buffyboard): Allow disabling input devices via config - feat(buffyboard): Add CLI flags for overriding geometry & DPI +- feat(buffyboard): Add CLI flag for verbose logging - fix(unl0kr): Shutdown message box doesn't close on decline - fix(unl0kr): Shutdown message box buttons and label are unstyled - fix(unl0kr): Build fails when DRM is disabled -- misc: Update lvgl to git master (2023-03-30) +- misc: Update lvgl to git master (2023-04-10) ## 3.0.0 (2024-03-22) diff --git a/README.md b/README.md index ade831e..92cad17 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,8 @@ BuffyBox is a suite of graphical applications for the terminal. **[squeek2lvgl]** – Converter for transforming [Squeekboard] layouts into [LVGL]-compatible C code +**[iskey]** - A utility for checking for key presses in bash scripts. + **[shared]** – Internal code that is shared by some or all applications in the suite but not meant to be used externally ## Contributing @@ -44,6 +46,7 @@ For the license of bundled images and fonts, see [shared/cursor] and [shared/fon [LVGL]: https://github.com/lvgl/lvgl [shared]: ./shared [squeek2lvgl]: ./squeek2lvgl +[iskey]: ./iskey [Squeekboard]: https://gitlab.gnome.org/World/Phosh/squeekboard [shared/cursor]: ./shared/cursor [shared/fonts]: ./shared/fonts diff --git a/buffyboard/README.md b/buffyboard/README.md index 648d464..9683077 100644 --- a/buffyboard/README.md +++ b/buffyboard/README.md @@ -59,6 +59,7 @@ Mandatory arguments to long options are mandatory for short options too. * 2 - upside down orientation (180 degrees) * 3 - counterclockwise orientation (270 degrees) -h, --help Print this message and exit + -v, --verbose Enable more detailed logging output on STDERR -V, --version Print the buffyboard version and exit ``` @@ -108,7 +109,15 @@ Buffyboard uses [squeekboard layouts] converted to C via [squeek2lvgl]. To regen $ ./regenerate-layouts.sh ``` -from the root of the repository. +## Generating screenshots + +To generate screenshots in a variety of common sizes, install [fbcat], build buffyboard and then run + +``` +$ sudo ./regenerate-screenshots _build/buffyboard +``` + +where `_build/buffyboard` is the location of the buffyboard binary. # Acknowledgements @@ -126,6 +135,7 @@ Buffyboard was inspired by [fbkeyboard]. [LVGL]: https://lvgl.io [arrow-alt-circle-up]: https://fontawesome.com/v5.15/icons/arrow-alt-circle-up?style=solid [buffyboard.conf]: ./buffyboard.conf +[fbcat]: https://github.com/jwilk/fbcat [fbkeyboard]: https://github.com/bakonyiferenc/fbkeyboard [inih]: https://github.com/benhoyt/inih [libinput]: https://gitlab.freedesktop.org/libinput/libinput diff --git a/buffyboard/command_line.c b/buffyboard/command_line.c index 747aa9c..b849876 100644 --- a/buffyboard/command_line.c +++ b/buffyboard/command_line.c @@ -45,6 +45,7 @@ static void init_opts(bb_cli_opts *opts) { opts->y_offset = 0; opts->dpi = 0; opts->rotation = LV_DISPLAY_ROTATION_0; + opts->verbose = false; } static void print_usage() { @@ -71,6 +72,7 @@ static void print_usage() { " * 2 - upside down orientation (180 degrees)\n" " * 3 - counterclockwise orientation (270 degrees)\n" " -h, --help Print this message and exit\n" + " -v, --verbose Enable more detailed logging output on STDERR\n" " -V, --version Print the buffyboard version and exit\n"); /*-------------------------------- 78 CHARS --------------------------------*/ } @@ -89,13 +91,14 @@ void bb_cli_parse_opts(int argc, char *argv[], bb_cli_opts *opts) { { "dpi", required_argument, NULL, 'd' }, { "rotate", required_argument, NULL, 'r' }, { "help", no_argument, NULL, 'h' }, + { "verbose", no_argument, NULL, 'v' }, { "version", no_argument, NULL, 'V' }, { NULL, 0, NULL, 0 } }; int opt, index = 0; - while ((opt = getopt_long(argc, argv, "C:g:d:r:hV", long_opts, &index)) != -1) { + while ((opt = getopt_long(argc, argv, "C:g:d:r:hvV", long_opts, &index)) != -1) { switch (opt) { case 'C': opts->config_files = realloc(opts->config_files, (opts->num_config_files + 1) * sizeof(char *)); @@ -145,6 +148,9 @@ void bb_cli_parse_opts(int argc, char *argv[], bb_cli_opts *opts) { case 'h': print_usage(); exit(EXIT_SUCCESS); + case 'v': + opts->verbose = true; + break; case 'V': fprintf(stderr, "buffyboard %s\n", BB_VERSION); exit(0); diff --git a/buffyboard/command_line.h b/buffyboard/command_line.h index b8dc399..009b44f 100644 --- a/buffyboard/command_line.h +++ b/buffyboard/command_line.h @@ -29,6 +29,8 @@ typedef struct { int dpi; /* Display rotation */ lv_display_rotation_t rotation; + /* Verbose mode. If true, provide more detailed logging output on STDERR. */ + bool verbose; } bb_cli_opts; /** diff --git a/buffyboard/main.c b/buffyboard/main.c index 1599c03..317445f 100644 --- a/buffyboard/main.c +++ b/buffyboard/main.c @@ -14,6 +14,7 @@ #include "lvgl/lvgl.h" #include "../shared/indev.h" +#include "../shared/log.h" #include "../shared/theme.h" #include "../shared/themes.h" #include "../squeek2lvgl/sq2lv.h" @@ -180,6 +181,11 @@ int main(int argc, char *argv[]) { /* Parse command line options */ bb_cli_parse_opts(argc, argv, &cli_opts); + /* Set up log level */ + if (cli_opts.verbose) { + bbx_log_set_level(BBX_LOG_LEVEL_VERBOSE); + } + /* Parse config files */ bb_config_init_opts(&conf_opts); bb_config_parse_file("/etc/buffyboard.conf", &conf_opts); diff --git a/buffyboard/meson.build b/buffyboard/meson.build index 246bced..5f5f49a 100644 --- a/buffyboard/meson.build +++ b/buffyboard/meson.build @@ -5,7 +5,7 @@ project( 'buffyboard', 'c', - version: '3.0.0', + version: '3.1.0', default_options: 'warning_level=1', meson_version: '>=0.53.0' ) diff --git a/buffyboard/regenerate-screenshots.sh b/buffyboard/regenerate-screenshots.sh index 5e76255..3848f71 100755 --- a/buffyboard/regenerate-screenshots.sh +++ b/buffyboard/regenerate-screenshots.sh @@ -7,14 +7,8 @@ executable=$1 outdir=screenshots config=buffyboard-screenshots.conf -themes=( - breezy-light - breezy-dark - pmos-light - pmos-dark - nord-light - nord-dark -) +root=$(git rev-parse --show-toplevel) +themes_c=$root/shared/themes.c resolutions=( # Nokia N900 @@ -34,6 +28,11 @@ resolutions=( 1920x1080 ) +if ! which fbcat > /dev/null 2>&1; then + echo "Error: Could not find fbcat" 1>&2 + exit 1 +fi + if [[ ! -f $executable || ! -x $executable ]]; then echo "Error: Could not find executable at $executable" 1>&2 exit 1 @@ -63,7 +62,7 @@ readme="# Buffyboard themes"$'\n' clear # Blank the screen -for theme in ${themes[@]}; do +while read -r theme; do write_config $theme readme="$readme"$'\n'"## $theme"$'\n\n' @@ -74,8 +73,11 @@ for theme in ${themes[@]}; do sleep 3 # Wait for UI to render - ../../fbcat/fbcat /dev/fb0 > "$outdir/$theme-$res.ppm" - convert -size $fb_res \ + fbcat /dev/fb0 > "$outdir/$theme-$res.ppm" + kill -15 $pid + + convert \ + -size $fb_res \ $outdir/$theme-$res.ppm \ screenshot-background.png \ -crop $res+0+0 \ @@ -84,12 +86,11 @@ for theme in ${themes[@]}; do "$outdir/$theme-$res.png" rm "$outdir/$theme-$res.ppm" - kill -15 $pid readme="$readme\"$res\""$'\n' sleep 1 # Delay to prevent terminal mode set / reset interference done -done +done < <(grep "name =" "$themes_c" | grep -o '".*"' | tr -d '"' | sort) echo -n "$readme" > "$outdir/README.md" diff --git a/buffyboard/screenshots/README.md b/buffyboard/screenshots/README.md index 0677e83..1319e07 100644 --- a/buffyboard/screenshots/README.md +++ b/buffyboard/screenshots/README.md @@ -1,16 +1,16 @@ # Buffyboard themes -## breezy-light +## adwaita-dark -480x800 -800x480 -540x960 -960x540 -768x1024 -1024x768 -1280x800 -1440x720 -1920x1080 +480x800 +800x480 +540x960 +960x540 +768x1024 +1024x768 +1280x800 +1440x720 +1920x1080 ## breezy-dark @@ -24,29 +24,29 @@ 1440x720 1920x1080 -## pmos-light +## breezy-light -480x800 -800x480 -540x960 -960x540 -768x1024 -1024x768 -1280x800 -1440x720 -1920x1080 +480x800 +800x480 +540x960 +960x540 +768x1024 +1024x768 +1280x800 +1440x720 +1920x1080 -## pmos-dark +## nord-dark -480x800 -800x480 -540x960 -960x540 -768x1024 -1024x768 -1280x800 -1440x720 -1920x1080 +480x800 +800x480 +540x960 +960x540 +768x1024 +1024x768 +1280x800 +1440x720 +1920x1080 ## nord-light @@ -60,14 +60,26 @@ 1440x720 1920x1080 -## nord-dark +## pmos-dark -480x800 -800x480 -540x960 -960x540 -768x1024 -1024x768 -1280x800 -1440x720 -1920x1080 +480x800 +800x480 +540x960 +960x540 +768x1024 +1024x768 +1280x800 +1440x720 +1920x1080 + +## pmos-light + +480x800 +800x480 +540x960 +960x540 +768x1024 +1024x768 +1280x800 +1440x720 +1920x1080 diff --git a/buffyboard/screenshots/adwaita-dark-1024x768.png b/buffyboard/screenshots/adwaita-dark-1024x768.png new file mode 100644 index 0000000..e8f0f44 Binary files /dev/null and b/buffyboard/screenshots/adwaita-dark-1024x768.png differ diff --git a/buffyboard/screenshots/adwaita-dark-1280x800.png b/buffyboard/screenshots/adwaita-dark-1280x800.png new file mode 100644 index 0000000..2d85679 Binary files /dev/null and b/buffyboard/screenshots/adwaita-dark-1280x800.png differ diff --git a/buffyboard/screenshots/adwaita-dark-1440x720.png b/buffyboard/screenshots/adwaita-dark-1440x720.png new file mode 100644 index 0000000..d4328c4 Binary files /dev/null and b/buffyboard/screenshots/adwaita-dark-1440x720.png differ diff --git a/buffyboard/screenshots/adwaita-dark-1920x1080.png b/buffyboard/screenshots/adwaita-dark-1920x1080.png new file mode 100644 index 0000000..bba07ad Binary files /dev/null and b/buffyboard/screenshots/adwaita-dark-1920x1080.png differ diff --git a/buffyboard/screenshots/adwaita-dark-480x800.png b/buffyboard/screenshots/adwaita-dark-480x800.png new file mode 100644 index 0000000..ecab0d9 Binary files /dev/null and b/buffyboard/screenshots/adwaita-dark-480x800.png differ diff --git a/buffyboard/screenshots/adwaita-dark-540x960.png b/buffyboard/screenshots/adwaita-dark-540x960.png new file mode 100644 index 0000000..d41b221 Binary files /dev/null and b/buffyboard/screenshots/adwaita-dark-540x960.png differ diff --git a/buffyboard/screenshots/adwaita-dark-768x1024.png b/buffyboard/screenshots/adwaita-dark-768x1024.png new file mode 100644 index 0000000..9eacb90 Binary files /dev/null and b/buffyboard/screenshots/adwaita-dark-768x1024.png differ diff --git a/buffyboard/screenshots/adwaita-dark-800x480.png b/buffyboard/screenshots/adwaita-dark-800x480.png new file mode 100644 index 0000000..2e3798c Binary files /dev/null and b/buffyboard/screenshots/adwaita-dark-800x480.png differ diff --git a/buffyboard/screenshots/adwaita-dark-960x540.png b/buffyboard/screenshots/adwaita-dark-960x540.png new file mode 100644 index 0000000..96ea3c1 Binary files /dev/null and b/buffyboard/screenshots/adwaita-dark-960x540.png differ diff --git a/buffyboard/screenshots/breezy-dark-1024x768.png b/buffyboard/screenshots/breezy-dark-1024x768.png index 69adae8..1a2bded 100644 Binary files a/buffyboard/screenshots/breezy-dark-1024x768.png and b/buffyboard/screenshots/breezy-dark-1024x768.png differ diff --git a/buffyboard/screenshots/breezy-dark-1280x800.png b/buffyboard/screenshots/breezy-dark-1280x800.png index 2e06948..d54594a 100644 Binary files a/buffyboard/screenshots/breezy-dark-1280x800.png and b/buffyboard/screenshots/breezy-dark-1280x800.png differ diff --git a/buffyboard/screenshots/breezy-dark-1440x720.png b/buffyboard/screenshots/breezy-dark-1440x720.png index e083ac0..0f22067 100644 Binary files a/buffyboard/screenshots/breezy-dark-1440x720.png and b/buffyboard/screenshots/breezy-dark-1440x720.png differ diff --git a/buffyboard/screenshots/breezy-dark-1920x1080.png b/buffyboard/screenshots/breezy-dark-1920x1080.png index e92d70b..28d9516 100644 Binary files a/buffyboard/screenshots/breezy-dark-1920x1080.png and b/buffyboard/screenshots/breezy-dark-1920x1080.png differ diff --git a/buffyboard/screenshots/breezy-dark-480x800.png b/buffyboard/screenshots/breezy-dark-480x800.png index 344b901..81ba947 100644 Binary files a/buffyboard/screenshots/breezy-dark-480x800.png and b/buffyboard/screenshots/breezy-dark-480x800.png differ diff --git a/buffyboard/screenshots/breezy-dark-540x960.png b/buffyboard/screenshots/breezy-dark-540x960.png index 9c50d6a..cead023 100644 Binary files a/buffyboard/screenshots/breezy-dark-540x960.png and b/buffyboard/screenshots/breezy-dark-540x960.png differ diff --git a/buffyboard/screenshots/breezy-dark-768x1024.png b/buffyboard/screenshots/breezy-dark-768x1024.png index 91c7c44..6cd5dd2 100644 Binary files a/buffyboard/screenshots/breezy-dark-768x1024.png and b/buffyboard/screenshots/breezy-dark-768x1024.png differ diff --git a/buffyboard/screenshots/breezy-dark-800x480.png b/buffyboard/screenshots/breezy-dark-800x480.png index db30940..d8fbb75 100644 Binary files a/buffyboard/screenshots/breezy-dark-800x480.png and b/buffyboard/screenshots/breezy-dark-800x480.png differ diff --git a/buffyboard/screenshots/breezy-dark-960x540.png b/buffyboard/screenshots/breezy-dark-960x540.png index 8697929..03553e2 100644 Binary files a/buffyboard/screenshots/breezy-dark-960x540.png and b/buffyboard/screenshots/breezy-dark-960x540.png differ diff --git a/buffyboard/screenshots/breezy-light-1024x768.png b/buffyboard/screenshots/breezy-light-1024x768.png index 48370e3..d3302e9 100644 Binary files a/buffyboard/screenshots/breezy-light-1024x768.png and b/buffyboard/screenshots/breezy-light-1024x768.png differ diff --git a/buffyboard/screenshots/breezy-light-1280x800.png b/buffyboard/screenshots/breezy-light-1280x800.png index a4b2c18..c2d7eb7 100644 Binary files a/buffyboard/screenshots/breezy-light-1280x800.png and b/buffyboard/screenshots/breezy-light-1280x800.png differ diff --git a/buffyboard/screenshots/breezy-light-1440x720.png b/buffyboard/screenshots/breezy-light-1440x720.png index 07a46f3..1e2a233 100644 Binary files a/buffyboard/screenshots/breezy-light-1440x720.png and b/buffyboard/screenshots/breezy-light-1440x720.png differ diff --git a/buffyboard/screenshots/breezy-light-1920x1080.png b/buffyboard/screenshots/breezy-light-1920x1080.png index 7c792b4..98b52fb 100644 Binary files a/buffyboard/screenshots/breezy-light-1920x1080.png and b/buffyboard/screenshots/breezy-light-1920x1080.png differ diff --git a/buffyboard/screenshots/breezy-light-480x800.png b/buffyboard/screenshots/breezy-light-480x800.png index 4913f20..355250c 100644 Binary files a/buffyboard/screenshots/breezy-light-480x800.png and b/buffyboard/screenshots/breezy-light-480x800.png differ diff --git a/buffyboard/screenshots/breezy-light-540x960.png b/buffyboard/screenshots/breezy-light-540x960.png index a9a9762..51bdd48 100644 Binary files a/buffyboard/screenshots/breezy-light-540x960.png and b/buffyboard/screenshots/breezy-light-540x960.png differ diff --git a/buffyboard/screenshots/breezy-light-768x1024.png b/buffyboard/screenshots/breezy-light-768x1024.png index a9713a4..c1e346a 100644 Binary files a/buffyboard/screenshots/breezy-light-768x1024.png and b/buffyboard/screenshots/breezy-light-768x1024.png differ diff --git a/buffyboard/screenshots/breezy-light-800x480.png b/buffyboard/screenshots/breezy-light-800x480.png index fb885d1..9e4e6ca 100644 Binary files a/buffyboard/screenshots/breezy-light-800x480.png and b/buffyboard/screenshots/breezy-light-800x480.png differ diff --git a/buffyboard/screenshots/breezy-light-960x540.png b/buffyboard/screenshots/breezy-light-960x540.png index 7f3f4e7..90de1b9 100644 Binary files a/buffyboard/screenshots/breezy-light-960x540.png and b/buffyboard/screenshots/breezy-light-960x540.png differ diff --git a/buffyboard/screenshots/nord-dark-1024x768.png b/buffyboard/screenshots/nord-dark-1024x768.png index f5d74ac..aa8b2ef 100644 Binary files a/buffyboard/screenshots/nord-dark-1024x768.png and b/buffyboard/screenshots/nord-dark-1024x768.png differ diff --git a/buffyboard/screenshots/nord-dark-1280x800.png b/buffyboard/screenshots/nord-dark-1280x800.png index c9971df..97a0d33 100644 Binary files a/buffyboard/screenshots/nord-dark-1280x800.png and b/buffyboard/screenshots/nord-dark-1280x800.png differ diff --git a/buffyboard/screenshots/nord-dark-1440x720.png b/buffyboard/screenshots/nord-dark-1440x720.png index 774b84a..f54900e 100644 Binary files a/buffyboard/screenshots/nord-dark-1440x720.png and b/buffyboard/screenshots/nord-dark-1440x720.png differ diff --git a/buffyboard/screenshots/nord-dark-1920x1080.png b/buffyboard/screenshots/nord-dark-1920x1080.png index 8708509..6d0e756 100644 Binary files a/buffyboard/screenshots/nord-dark-1920x1080.png and b/buffyboard/screenshots/nord-dark-1920x1080.png differ diff --git a/buffyboard/screenshots/nord-dark-480x800.png b/buffyboard/screenshots/nord-dark-480x800.png index b12d101..b63b7fa 100644 Binary files a/buffyboard/screenshots/nord-dark-480x800.png and b/buffyboard/screenshots/nord-dark-480x800.png differ diff --git a/buffyboard/screenshots/nord-dark-540x960.png b/buffyboard/screenshots/nord-dark-540x960.png index 4834945..201acf5 100644 Binary files a/buffyboard/screenshots/nord-dark-540x960.png and b/buffyboard/screenshots/nord-dark-540x960.png differ diff --git a/buffyboard/screenshots/nord-dark-768x1024.png b/buffyboard/screenshots/nord-dark-768x1024.png index 3ee3536..86b4514 100644 Binary files a/buffyboard/screenshots/nord-dark-768x1024.png and b/buffyboard/screenshots/nord-dark-768x1024.png differ diff --git a/buffyboard/screenshots/nord-dark-800x480.png b/buffyboard/screenshots/nord-dark-800x480.png index 688119c..2a17426 100644 Binary files a/buffyboard/screenshots/nord-dark-800x480.png and b/buffyboard/screenshots/nord-dark-800x480.png differ diff --git a/buffyboard/screenshots/nord-dark-960x540.png b/buffyboard/screenshots/nord-dark-960x540.png index ceccbac..4744da1 100644 Binary files a/buffyboard/screenshots/nord-dark-960x540.png and b/buffyboard/screenshots/nord-dark-960x540.png differ diff --git a/buffyboard/screenshots/nord-light-1024x768.png b/buffyboard/screenshots/nord-light-1024x768.png index 6e041cd..807aa5f 100644 Binary files a/buffyboard/screenshots/nord-light-1024x768.png and b/buffyboard/screenshots/nord-light-1024x768.png differ diff --git a/buffyboard/screenshots/nord-light-1280x800.png b/buffyboard/screenshots/nord-light-1280x800.png index a1c3918..67f4f88 100644 Binary files a/buffyboard/screenshots/nord-light-1280x800.png and b/buffyboard/screenshots/nord-light-1280x800.png differ diff --git a/buffyboard/screenshots/nord-light-1440x720.png b/buffyboard/screenshots/nord-light-1440x720.png index 4f1652f..9611699 100644 Binary files a/buffyboard/screenshots/nord-light-1440x720.png and b/buffyboard/screenshots/nord-light-1440x720.png differ diff --git a/buffyboard/screenshots/nord-light-1920x1080.png b/buffyboard/screenshots/nord-light-1920x1080.png index 514f1b1..2273f4f 100644 Binary files a/buffyboard/screenshots/nord-light-1920x1080.png and b/buffyboard/screenshots/nord-light-1920x1080.png differ diff --git a/buffyboard/screenshots/nord-light-480x800.png b/buffyboard/screenshots/nord-light-480x800.png index ed43e58..dff8f19 100644 Binary files a/buffyboard/screenshots/nord-light-480x800.png and b/buffyboard/screenshots/nord-light-480x800.png differ diff --git a/buffyboard/screenshots/nord-light-540x960.png b/buffyboard/screenshots/nord-light-540x960.png index e28463d..99202f2 100644 Binary files a/buffyboard/screenshots/nord-light-540x960.png and b/buffyboard/screenshots/nord-light-540x960.png differ diff --git a/buffyboard/screenshots/nord-light-768x1024.png b/buffyboard/screenshots/nord-light-768x1024.png index 5396101..f3163a3 100644 Binary files a/buffyboard/screenshots/nord-light-768x1024.png and b/buffyboard/screenshots/nord-light-768x1024.png differ diff --git a/buffyboard/screenshots/nord-light-800x480.png b/buffyboard/screenshots/nord-light-800x480.png index 26b0a8d..1ed5249 100644 Binary files a/buffyboard/screenshots/nord-light-800x480.png and b/buffyboard/screenshots/nord-light-800x480.png differ diff --git a/buffyboard/screenshots/nord-light-960x540.png b/buffyboard/screenshots/nord-light-960x540.png index bcc725f..08aa610 100644 Binary files a/buffyboard/screenshots/nord-light-960x540.png and b/buffyboard/screenshots/nord-light-960x540.png differ diff --git a/buffyboard/screenshots/pmos-dark-1024x768.png b/buffyboard/screenshots/pmos-dark-1024x768.png index 31ec6b1..c399464 100644 Binary files a/buffyboard/screenshots/pmos-dark-1024x768.png and b/buffyboard/screenshots/pmos-dark-1024x768.png differ diff --git a/buffyboard/screenshots/pmos-dark-1280x800.png b/buffyboard/screenshots/pmos-dark-1280x800.png index ad23809..c5cf819 100644 Binary files a/buffyboard/screenshots/pmos-dark-1280x800.png and b/buffyboard/screenshots/pmos-dark-1280x800.png differ diff --git a/buffyboard/screenshots/pmos-dark-1440x720.png b/buffyboard/screenshots/pmos-dark-1440x720.png index 5ddb528..4cbfef2 100644 Binary files a/buffyboard/screenshots/pmos-dark-1440x720.png and b/buffyboard/screenshots/pmos-dark-1440x720.png differ diff --git a/buffyboard/screenshots/pmos-dark-1920x1080.png b/buffyboard/screenshots/pmos-dark-1920x1080.png index 402640c..7d095fa 100644 Binary files a/buffyboard/screenshots/pmos-dark-1920x1080.png and b/buffyboard/screenshots/pmos-dark-1920x1080.png differ diff --git a/buffyboard/screenshots/pmos-dark-480x800.png b/buffyboard/screenshots/pmos-dark-480x800.png index 5299c65..3835223 100644 Binary files a/buffyboard/screenshots/pmos-dark-480x800.png and b/buffyboard/screenshots/pmos-dark-480x800.png differ diff --git a/buffyboard/screenshots/pmos-dark-540x960.png b/buffyboard/screenshots/pmos-dark-540x960.png index bf52274..14682a2 100644 Binary files a/buffyboard/screenshots/pmos-dark-540x960.png and b/buffyboard/screenshots/pmos-dark-540x960.png differ diff --git a/buffyboard/screenshots/pmos-dark-768x1024.png b/buffyboard/screenshots/pmos-dark-768x1024.png index 4930eee..ce630d1 100644 Binary files a/buffyboard/screenshots/pmos-dark-768x1024.png and b/buffyboard/screenshots/pmos-dark-768x1024.png differ diff --git a/buffyboard/screenshots/pmos-dark-800x480.png b/buffyboard/screenshots/pmos-dark-800x480.png index c9f8ec2..c8e4aa2 100644 Binary files a/buffyboard/screenshots/pmos-dark-800x480.png and b/buffyboard/screenshots/pmos-dark-800x480.png differ diff --git a/buffyboard/screenshots/pmos-dark-960x540.png b/buffyboard/screenshots/pmos-dark-960x540.png index fff86b2..8c37eb4 100644 Binary files a/buffyboard/screenshots/pmos-dark-960x540.png and b/buffyboard/screenshots/pmos-dark-960x540.png differ diff --git a/buffyboard/screenshots/pmos-light-1024x768.png b/buffyboard/screenshots/pmos-light-1024x768.png index 85b0c22..0b76d54 100644 Binary files a/buffyboard/screenshots/pmos-light-1024x768.png and b/buffyboard/screenshots/pmos-light-1024x768.png differ diff --git a/buffyboard/screenshots/pmos-light-1280x800.png b/buffyboard/screenshots/pmos-light-1280x800.png index 24f4553..5a616b6 100644 Binary files a/buffyboard/screenshots/pmos-light-1280x800.png and b/buffyboard/screenshots/pmos-light-1280x800.png differ diff --git a/buffyboard/screenshots/pmos-light-1440x720.png b/buffyboard/screenshots/pmos-light-1440x720.png index 1b45bf2..17bf575 100644 Binary files a/buffyboard/screenshots/pmos-light-1440x720.png and b/buffyboard/screenshots/pmos-light-1440x720.png differ diff --git a/buffyboard/screenshots/pmos-light-1920x1080.png b/buffyboard/screenshots/pmos-light-1920x1080.png index cd33f3e..2ceff91 100644 Binary files a/buffyboard/screenshots/pmos-light-1920x1080.png and b/buffyboard/screenshots/pmos-light-1920x1080.png differ diff --git a/buffyboard/screenshots/pmos-light-480x800.png b/buffyboard/screenshots/pmos-light-480x800.png index 337c1ab..1b62528 100644 Binary files a/buffyboard/screenshots/pmos-light-480x800.png and b/buffyboard/screenshots/pmos-light-480x800.png differ diff --git a/buffyboard/screenshots/pmos-light-540x960.png b/buffyboard/screenshots/pmos-light-540x960.png index 20da132..2497c48 100644 Binary files a/buffyboard/screenshots/pmos-light-540x960.png and b/buffyboard/screenshots/pmos-light-540x960.png differ diff --git a/buffyboard/screenshots/pmos-light-768x1024.png b/buffyboard/screenshots/pmos-light-768x1024.png index bce768e..d453912 100644 Binary files a/buffyboard/screenshots/pmos-light-768x1024.png and b/buffyboard/screenshots/pmos-light-768x1024.png differ diff --git a/buffyboard/screenshots/pmos-light-800x480.png b/buffyboard/screenshots/pmos-light-800x480.png index 6c132fd..36fed68 100644 Binary files a/buffyboard/screenshots/pmos-light-800x480.png and b/buffyboard/screenshots/pmos-light-800x480.png differ diff --git a/buffyboard/screenshots/pmos-light-960x540.png b/buffyboard/screenshots/pmos-light-960x540.png index 32e8958..91abf6e 100644 Binary files a/buffyboard/screenshots/pmos-light-960x540.png and b/buffyboard/screenshots/pmos-light-960x540.png differ diff --git a/buffyboard/test/build.sh b/buffyboard/test/build.sh new file mode 100755 index 0000000..114a085 --- /dev/null +++ b/buffyboard/test/build.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +rm -rf _build +meson _build +meson compile -C _build diff --git a/buffyboard/test/helpers.sh b/buffyboard/test/helpers.sh new file mode 100644 index 0000000..f6f21bf --- /dev/null +++ b/buffyboard/test/helpers.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +source "$(dirname "${BASH_SOURCE[0]}")/../../test/helpers.sh" + +function run_buffyboard_async() { + local log=$1 + local conf=$2 + + ./_build/buffyboard -v -C "$conf" > "$log" 2>&1 & + pid=$! + sleep 3 + + kill -9 $pid + wait $pid > /dev/null 2>&1 +} + +function run_buffyboard_sync() { + local log=$1 + shift + local conf=$2 + shift + local args=$@ + + ./_build/buffyboard -v -C "$conf" $@ > "$log" 2>&1 +} diff --git a/buffyboard/test/test-all.sh b/buffyboard/test/test-all.sh new file mode 100755 index 0000000..d474e6b --- /dev/null +++ b/buffyboard/test/test-all.sh @@ -0,0 +1,8 @@ +#!/bin/bash + +root=$(dirname "${BASH_SOURCE[0]}") + +source "$root/helpers.sh" + +run_script "$root/build.sh" +run_script "$root/test-version-matches-meson-and-changelog.sh" diff --git a/buffyboard/test/test-version-matches-meson-and-changelog.sh b/buffyboard/test/test-version-matches-meson-and-changelog.sh new file mode 100755 index 0000000..e645d69 --- /dev/null +++ b/buffyboard/test/test-version-matches-meson-and-changelog.sh @@ -0,0 +1,37 @@ +#!/bin/bash + +log=tmp.log + +root=$(dirname "${BASH_SOURCE[0]}") + +source "$root/helpers.sh" + +function clean_up() { + rm -f "$log" +} + +trap clean_up EXIT + +info "Querying version from build.meson" +meson_version=$(read_version_from_meson) + +info "Querying version from CHANGELOG.md" +changelog_version=$(read_version_from_changelog) + +info "Verifying versions" +if [[ "$meson_version" != "$changelog_version" ]]; then + error "Version $meson_version from meson.build doesn't match version $changelog_version from CHANGELOG.md" + exit 1 +fi + +info "Running buffyboard" +run_buffyboard_sync "$log" "$conf" -V + +info "Verifying output" +if ! grep "buffyboard $meson_version" "$log"; then + error "Expected version $meson_version" + cat "$log" + exit 1 +fi + +ok diff --git a/iskey/README.md b/iskey/README.md new file mode 100644 index 0000000..ff7bf6f --- /dev/null +++ b/iskey/README.md @@ -0,0 +1,7 @@ +# iskey + +A tiny utility for determining if a key is pressed. + +iskey is intended to be used in the context of a constrained environment like +the initramfs, it allows for easily scripting things like "is the user holding +volume down" which are generally non-trivial to check for in a shell script. diff --git a/iskey/iskey.c b/iskey/iskey.c new file mode 100644 index 0000000..e92f52d --- /dev/null +++ b/iskey/iskey.c @@ -0,0 +1,128 @@ +// SPDX-License-Identifier: GPL-3.0-or-later + +#include +#include +#include +#include +#include +#include + +#define MAX_KEYS 32 + +static int codes[MAX_KEYS] = { 0 }; +static unsigned int types[MAX_KEYS] = { 0 }; +static int debug = 0; +static int print_key = 0; + +#define log(fmt, ...) \ + do { \ + if (debug) \ + fprintf(stderr, fmt, ##__VA_ARGS__); \ + } while (0) + +#define INPUT_DIR "/dev/input/" + +int usage(const char *name) +{ + fprintf(stderr, "Usage: %s [-d] [-s] key1...\n", name); + fprintf(stderr, " -d: debug mode\n"); + fprintf(stderr, " -s: print the name of the key\n"); + fprintf(stderr, "\n"); + fprintf(stderr, " Check if any input device has the specified keys pressed\n" + " and exit with code 0 if so, otherwise exit with code 1\n"); + return 1; +} + +/* Check if any of the input devices have a non-zero value for any of the keys. + * if so then return 0, otherwise return -1. + */ +int check_for_keys(struct libevdev *dev) +{ + int i; + + for (i = 0; i < MAX_KEYS; i++) { + if (codes[i] == 0) + break; + if (!libevdev_has_event_code(dev, types[i], codes[i])) + continue; + if (libevdev_get_event_value(dev, types[i], codes[i])) { + if (print_key) + printf("%s\n", libevdev_event_code_get_name(types[i], codes[i])); + return 0; + } + } + + return -1; +} + +int main(int argc, char *argv[]) +{ + struct libevdev *dev; + struct dirent *dir; + DIR *d; + int i = 0, opt, fd; + char path[64] = { 0 }; + + /* getopt */ + while ((opt = getopt(argc, argv, "d")) != -1) { + switch (opt) { + case 'd': + debug = 1; + break; + case 's': + print_key = 1; + break; + default: + return usage(argv[0]); + } + } + + for (; optind < argc && i < MAX_KEYS; optind++) { + codes[i] = libevdev_event_code_from_code_name(argv[optind]); + if (codes[i] == -1) { + fprintf(stderr, "Unknown key %s\n", argv[optind]); + return 1; + } + types[i++] = libevdev_event_type_from_code_name(argv[optind]); + log("Checking for %s %s (%d)\n", libevdev_event_type_get_name(types[i-1]), argv[optind], codes[i-1]); + } + + d = opendir(INPUT_DIR); + if (!d) { + perror("couldn't open /dev/input/"); + return 1; + } + + /* Walk through the entries in /dev/input */ + while ((dir = readdir(d)) != NULL) { + memset(path, 0, sizeof(path)); + i = snprintf(path, sizeof(path), "%s%s", INPUT_DIR, dir->d_name); + if (i < 0 || i >= sizeof(path)) { + printf("Path '%s' too long\n", dir->d_name); + return 1; + } + + if (dir->d_type != DT_CHR || strncmp("event", dir->d_name, 5) != 0) + continue; + + fd = open(path, O_RDONLY|O_NONBLOCK); + if (fd < 0) { + log("couldn't open device %s\n", dir->d_name); + continue; + } + fd = libevdev_new_from_fd(fd, &dev); + if (fd < 0) { + log("couldn't init libevdev for %s: %s\n", dir->d_name, strerror(-fd)); + continue; + } + log("Checking device %s\n", libevdev_get_name(dev)); + if (!check_for_keys(dev)) { + close(fd); + return 0; + } + close(fd); + } + closedir(d); + + return 1; +} diff --git a/iskey/meson.build b/iskey/meson.build new file mode 100644 index 0000000..aa317d4 --- /dev/null +++ b/iskey/meson.build @@ -0,0 +1,7 @@ +project('iskey', 'c') + +libevdev_dep = dependency('libevdev') + +iskey_exe = executable('iskey', + 'iskey.c', + dependencies: libevdev_dep) diff --git a/lvgl b/lvgl index 03498a2..ceadda8 160000 --- a/lvgl +++ b/lvgl @@ -1 +1 @@ -Subproject commit 03498a2f83d36dfe7bd009a4451083a4f64ef0ba +Subproject commit ceadda8a468b7d5fa6ba973bd82cf610166278d8 diff --git a/shared/themes.c b/shared/themes.c index ab34a4d..be4f9a3 100644 --- a/shared/themes.c +++ b/shared/themes.c @@ -632,8 +632,161 @@ static const bbx_theme pmos_dark = { } }; -/* Nord themes (based on https://www.nordtheme.com/docs/colors-and-palettes) */ +/* Adwaita dark (based on https://gitlab.gnome.org/GNOME/libadwaita) */ +static const bbx_theme adwaita_dark = { + .name = "adwaita-dark", + .window = { + .bg_color = 0x151515 + }, + .header = { + .bg_color = 0x242424, + .border_width = 0, + .border_color = 0x242424, + .pad = 10, + .gap = 10 + }, + .keyboard = { + .bg_color = 0x242424, + .border_width = 2, + .border_color = 0x242424, + .pad = 20, + .gap = 10, + .keys = { + .border_width = 1, + .corner_radius = 5, + .key_char = { + .normal = { + .fg_color = 0xDEDDDA, + .bg_color = 0x464448, + .border_color = 0x464448 + }, + .pressed = { + .fg_color = 0xDEDDDA, + .bg_color = 0x747077, + .border_color = 0x747077 + } + }, + .key_non_char = { + .normal = { + .fg_color = 0xDEDDDA, + .bg_color = 0x3A3A3A, + .border_color = 0x3A3A3A + }, + .pressed = { + .fg_color = 0xDEDDDA, + .bg_color = 0x666666, + .border_color = 0x666666 + } + }, + .key_mod_act = { + .normal = { + .fg_color = 0x1E1E1E, + .bg_color = 0x747077, + .border_color = 0x747077 + }, + .pressed = { + .fg_color = 0xDEDDDA, + .bg_color = 0x464448, + .border_color = 0x464448 + } + }, + .key_mod_inact = { + .normal = { + .fg_color = 0xDEDDDA, + .bg_color = 0x3A3A3A, + .border_color = 0x3A3A3A + }, + .pressed = { + .fg_color = 0xDEDDDA, + .bg_color = 0x3A3A3A, + .border_color = 0x3A3A3A + } + } + } + }, + .button = { + .border_width = 1, + .corner_radius = 5, + .pad = 8, + .normal = { + .fg_color = 0xDEDDDA, + .bg_color = 0x3A3A3A, + .border_color = 0x3A3A3A + }, + .pressed = { + .fg_color = 0xDEDDDA, + .bg_color = 0x666666, + .border_color = 0x666666 + } + }, + .textarea = { + .fg_color = 0xDEDDDA, + .bg_color = 0x282828, + .border_width = 1, + .border_color = 0x1C71D8, + .corner_radius = 10, + .pad = 8, + .placeholder_color = 0x1C71D8, + .cursor = { + .width = 2, + .color = 0xDEDDDA, + .period = 700 + } + }, + .dropdown = { + .button = { + .border_width = 1, + .corner_radius = 5, + .pad = 8, + .normal = { + .fg_color = 0xDEDDDA, + .bg_color = 0x3A3A3A, + .border_color = 0x3A3A3A + }, + .pressed = { + .fg_color = 0xDEDDDA, + .bg_color = 0x666666, + .border_color = 0x666666 + } + }, + .list = { + .fg_color = 0xDEDDDA, + .bg_color = 0x383838, + .selection_fg_color = 0xDEDDDA, + .selection_bg_color = 0x5E5E5E, + .border_width = 1, + .border_color = 0x383838, + .corner_radius = 5, + .pad = 8 + } + }, + .label = { + .fg_color = 0xDEDDDA, + }, + .msgbox = { + .fg_color = 0xDEDDDA, + .bg_color = 0x383838, + .border_width = 1, + .border_color = 0x383838, + .corner_radius = 7, + .pad = 20, + .gap = 20, + .dimming = { + .color = 0x151515, + .opacity = 225 + } + }, + .bar = { + .border_width = 1, + .border_color = 0x1C71D8, + .corner_radius = 5, + .indicator = { + .bg_color = 0x1C71D8 + } + } +}; +/* Nord themes (based on https://www.nordtheme.com/docs/colors-and-palettes) */ #define NORD0 0x2e3440 #define NORD1 0x3b4252 #define NORD2 0x434c5e @@ -962,14 +1115,15 @@ static const bbx_theme nord_dark = { * Public interface */ -const int bbx_themes_num_themes = 6; +const int bbx_themes_num_themes = 7; const bbx_theme *bbx_themes_themes[] = { &breezy_light, &breezy_dark, &pmos_light, &pmos_dark, + &adwaita_dark, &nord_light, - &nord_dark, + &nord_dark }; bbx_themes_theme_id_t bbx_themes_find_theme_with_name(const char *name) { diff --git a/shared/themes.h b/shared/themes.h index 5d592cf..f72f767 100644 --- a/shared/themes.h +++ b/shared/themes.h @@ -15,7 +15,10 @@ typedef enum { BBX_THEMES_THEME_BREEZY_LIGHT = 0, BBX_THEMES_THEME_BREEZY_DARK = 1, BBX_THEMES_THEME_PMOS_LIGHT = 2, - BBX_THEMES_THEME_PMOS_DARK = 3 + BBX_THEMES_THEME_PMOS_DARK = 3, + BBX_THEMES_THEME_ADWAITA_DARK = 4, + BBX_THEMES_THEME_NORD_LIGHT = 5, + BBX_THEMES_THEME_NORD_DARK = 6, } bbx_themes_theme_id_t; /* Themes */ diff --git a/test/helpers.sh b/test/helpers.sh new file mode 100644 index 0000000..135757c --- /dev/null +++ b/test/helpers.sh @@ -0,0 +1,27 @@ +#!/bin/bash + +function info() { + echo -e "[Info] $1" +} + +function error() { + echo -e "\e[31m[Error]\e[0m $1" +} + +function ok() { + echo -e "\e[32m[Ok]\e[0m $1" +} + +function run_script() { + info "Executing $1" + "$1" + echo +} + +function read_version_from_meson() { + grep "^[[:space:]]*version:" "$root/../meson.build" | head -n1 | grep -o "[[:digit:]]\+\.[[:digit:]]\+\.[[:digit:]]\+" +} + +function read_version_from_changelog() { + grep "^## [[:digit:]]" "$root/../../CHANGELOG.md" | head -n1 | grep -o "[[:digit:]]\+\.[[:digit:]]\+\.[[:digit:]]\+" +} diff --git a/unl0kr/README.md b/unl0kr/README.md index 2e4612b..2855562 100644 --- a/unl0kr/README.md +++ b/unl0kr/README.md @@ -137,17 +137,15 @@ Unl0kr uses [squeekboard layouts] converted to C via [squeek2lvgl]. To regenerat $ ./regenerate-layouts.sh ``` -from the root of the repository. - ## Generating screenshots -To generate screenshots in a variety of common sizes, build unl0kr and then run +To generate screenshots in a variety of common sizes, install [fbcat], build unl0kr and then run ``` $ sudo ./regenerate-screenshots _build/unl0kr ``` -where `_build/unl0kr` is the location of the unl0kr binary. Note that you may have to adapt some of the settings inside the script depending on the device you're using to generate the screenshots. +where `_build/unl0kr` is the location of the unl0kr binary. ## Screen recording @@ -164,6 +162,7 @@ The [lv_port_linux_frame_buffer] project served as a starting point for the code [LVGL]: https://lvgl.io [adjust]: https://fontawesome.com/v5.15/icons/adjust?style=solid [arrow-alt-circle-up]: https://fontawesome.com/v5.15/icons/arrow-alt-circle-up?style=solid +[fbcat]: https://github.com/jwilk/fbcat [inih]: https://github.com/benhoyt/inih [libinput]: https://gitlab.freedesktop.org/libinput/libinput [libudev]: https://github.com/systemd/systemd/tree/main/src/libudev diff --git a/unl0kr/meson.build b/unl0kr/meson.build index b6b3b80..925d737 100644 --- a/unl0kr/meson.build +++ b/unl0kr/meson.build @@ -5,7 +5,7 @@ project( 'unl0kr', 'c', - version: '3.0.0', + version: '3.1.0', default_options: 'warning_level=3', meson_version: '>=0.53.0' ) diff --git a/unl0kr/regenerate-screenshots.sh b/unl0kr/regenerate-screenshots.sh index 28fc2da..a41c260 100755 --- a/unl0kr/regenerate-screenshots.sh +++ b/unl0kr/regenerate-screenshots.sh @@ -7,14 +7,8 @@ executable=$1 outdir=screenshots config=unl0kr-screenshots.conf -themes=( - breezy-light - breezy-dark - pmos-light - pmos-dark - nord-light - nord-dark -) +root=$(git rev-parse --show-toplevel) +themes_c=$root/shared/themes.c resolutions=( # Nokia N900 @@ -34,6 +28,11 @@ resolutions=( 1920x1080 ) +if ! which fbcat > /dev/null 2>&1; then + echo "Error: Could not find fbcat" 1>&2 + exit 1 +fi + if [[ ! -f $executable || ! -x $executable ]]; then echo "Error: Could not find executable at $executable" 1>&2 exit 1 @@ -62,18 +61,20 @@ touchscreen=false EOF } -function nuke_config() { +function clean_up() { rm -f $config } -trap "nuke_config" EXIT +trap clean_up EXIT rm -rf "$outdir" mkdir "$outdir" readme="# Unl0kr themes"$'\n' -for theme in ${themes[@]}; do +clear # Blank the screen + +while read -r theme; do write_config $theme readme="$readme"$'\n'"## $theme"$'\n\n' @@ -84,15 +85,20 @@ for theme in ${themes[@]}; do sleep 3 # Wait for UI to render - ../../fbcat/fbcat /dev/fb0 > "$outdir/$theme-$res.ppm" - convert -size $fb_res "$outdir/$theme-$res.ppm" -crop $res+0+0 "$outdir/$theme-$res.png" - rm "$outdir/$theme-$res.ppm" + fbcat /dev/fb0 > "$outdir/$theme-$res.ppm" kill -15 $pid + convert \ + -size $fb_res \ + "$outdir/$theme-$res.ppm" \ + -crop $res+0+0 \ + "$outdir/$theme-$res.png" + rm "$outdir/$theme-$res.ppm" + readme="$readme\"$res\""$'\n' sleep 1 # Delay to prevent terminal mode set / reset interference done -done +done < <(grep "name =" "$themes_c" | grep -o '".*"' | tr -d '"' | sort) echo -n "$readme" > "$outdir/README.md" diff --git a/unl0kr/screenshots/README.md b/unl0kr/screenshots/README.md index a396ddc..3e1d30d 100644 --- a/unl0kr/screenshots/README.md +++ b/unl0kr/screenshots/README.md @@ -1,16 +1,16 @@ # Unl0kr themes -## breezy-light +## adwaita-dark -480x800 -800x480 -540x960 -960x540 -768x1024 -1024x768 -1280x800 -1440x720 -1920x1080 +480x800 +800x480 +540x960 +960x540 +768x1024 +1024x768 +1280x800 +1440x720 +1920x1080 ## breezy-dark @@ -24,17 +24,41 @@ 1440x720 1920x1080 -## pmos-light +## breezy-light -480x800 -800x480 -540x960 -960x540 -768x1024 -1024x768 -1280x800 -1440x720 -1920x1080 +480x800 +800x480 +540x960 +960x540 +768x1024 +1024x768 +1280x800 +1440x720 +1920x1080 + +## nord-dark + +480x800 +800x480 +540x960 +960x540 +768x1024 +1024x768 +1280x800 +1440x720 +1920x1080 + +## nord-light + +480x800 +800x480 +540x960 +960x540 +768x1024 +1024x768 +1280x800 +1440x720 +1920x1080 ## pmos-dark @@ -47,3 +71,15 @@ 1280x800 1440x720 1920x1080 + +## pmos-light + +480x800 +800x480 +540x960 +960x540 +768x1024 +1024x768 +1280x800 +1440x720 +1920x1080 diff --git a/unl0kr/screenshots/adwaita-dark-1024x768.png b/unl0kr/screenshots/adwaita-dark-1024x768.png new file mode 100644 index 0000000..7ff00e4 Binary files /dev/null and b/unl0kr/screenshots/adwaita-dark-1024x768.png differ diff --git a/unl0kr/screenshots/adwaita-dark-1280x800.png b/unl0kr/screenshots/adwaita-dark-1280x800.png new file mode 100644 index 0000000..1867cbf Binary files /dev/null and b/unl0kr/screenshots/adwaita-dark-1280x800.png differ diff --git a/unl0kr/screenshots/adwaita-dark-1440x720.png b/unl0kr/screenshots/adwaita-dark-1440x720.png new file mode 100644 index 0000000..d4cb238 Binary files /dev/null and b/unl0kr/screenshots/adwaita-dark-1440x720.png differ diff --git a/unl0kr/screenshots/adwaita-dark-1920x1080.png b/unl0kr/screenshots/adwaita-dark-1920x1080.png new file mode 100644 index 0000000..2102b50 Binary files /dev/null and b/unl0kr/screenshots/adwaita-dark-1920x1080.png differ diff --git a/unl0kr/screenshots/adwaita-dark-480x800.png b/unl0kr/screenshots/adwaita-dark-480x800.png new file mode 100644 index 0000000..0a75656 Binary files /dev/null and b/unl0kr/screenshots/adwaita-dark-480x800.png differ diff --git a/unl0kr/screenshots/adwaita-dark-540x960.png b/unl0kr/screenshots/adwaita-dark-540x960.png new file mode 100644 index 0000000..42276f0 Binary files /dev/null and b/unl0kr/screenshots/adwaita-dark-540x960.png differ diff --git a/unl0kr/screenshots/adwaita-dark-768x1024.png b/unl0kr/screenshots/adwaita-dark-768x1024.png new file mode 100644 index 0000000..f1a87cb Binary files /dev/null and b/unl0kr/screenshots/adwaita-dark-768x1024.png differ diff --git a/unl0kr/screenshots/adwaita-dark-800x480.png b/unl0kr/screenshots/adwaita-dark-800x480.png new file mode 100644 index 0000000..95d11dc Binary files /dev/null and b/unl0kr/screenshots/adwaita-dark-800x480.png differ diff --git a/unl0kr/screenshots/adwaita-dark-960x540.png b/unl0kr/screenshots/adwaita-dark-960x540.png new file mode 100644 index 0000000..9fc7c80 Binary files /dev/null and b/unl0kr/screenshots/adwaita-dark-960x540.png differ diff --git a/unl0kr/screenshots/breezy-dark-1024x768.png b/unl0kr/screenshots/breezy-dark-1024x768.png index 1ee0303..1748ad7 100644 Binary files a/unl0kr/screenshots/breezy-dark-1024x768.png and b/unl0kr/screenshots/breezy-dark-1024x768.png differ diff --git a/unl0kr/screenshots/breezy-dark-1280x800.png b/unl0kr/screenshots/breezy-dark-1280x800.png index 8ed2d72..d1245ae 100644 Binary files a/unl0kr/screenshots/breezy-dark-1280x800.png and b/unl0kr/screenshots/breezy-dark-1280x800.png differ diff --git a/unl0kr/screenshots/breezy-dark-1440x720.png b/unl0kr/screenshots/breezy-dark-1440x720.png index 644f440..a59e997 100644 Binary files a/unl0kr/screenshots/breezy-dark-1440x720.png and b/unl0kr/screenshots/breezy-dark-1440x720.png differ diff --git a/unl0kr/screenshots/breezy-dark-1920x1080.png b/unl0kr/screenshots/breezy-dark-1920x1080.png index 28ed8d4..7e28565 100644 Binary files a/unl0kr/screenshots/breezy-dark-1920x1080.png and b/unl0kr/screenshots/breezy-dark-1920x1080.png differ diff --git a/unl0kr/screenshots/breezy-dark-480x800.png b/unl0kr/screenshots/breezy-dark-480x800.png index 5b43828..d37be56 100644 Binary files a/unl0kr/screenshots/breezy-dark-480x800.png and b/unl0kr/screenshots/breezy-dark-480x800.png differ diff --git a/unl0kr/screenshots/breezy-dark-540x960.png b/unl0kr/screenshots/breezy-dark-540x960.png index 2064d93..6cb76aa 100644 Binary files a/unl0kr/screenshots/breezy-dark-540x960.png and b/unl0kr/screenshots/breezy-dark-540x960.png differ diff --git a/unl0kr/screenshots/breezy-dark-768x1024.png b/unl0kr/screenshots/breezy-dark-768x1024.png index 0fce9cc..370a74d 100644 Binary files a/unl0kr/screenshots/breezy-dark-768x1024.png and b/unl0kr/screenshots/breezy-dark-768x1024.png differ diff --git a/unl0kr/screenshots/breezy-dark-800x480.png b/unl0kr/screenshots/breezy-dark-800x480.png index 656f8e4..d40d526 100644 Binary files a/unl0kr/screenshots/breezy-dark-800x480.png and b/unl0kr/screenshots/breezy-dark-800x480.png differ diff --git a/unl0kr/screenshots/breezy-dark-960x540.png b/unl0kr/screenshots/breezy-dark-960x540.png index 29d1cce..eb1486a 100644 Binary files a/unl0kr/screenshots/breezy-dark-960x540.png and b/unl0kr/screenshots/breezy-dark-960x540.png differ diff --git a/unl0kr/screenshots/breezy-light-1024x768.png b/unl0kr/screenshots/breezy-light-1024x768.png index 24ecab5..346eaca 100644 Binary files a/unl0kr/screenshots/breezy-light-1024x768.png and b/unl0kr/screenshots/breezy-light-1024x768.png differ diff --git a/unl0kr/screenshots/breezy-light-1280x800.png b/unl0kr/screenshots/breezy-light-1280x800.png index 2afaaeb..c12dbe0 100644 Binary files a/unl0kr/screenshots/breezy-light-1280x800.png and b/unl0kr/screenshots/breezy-light-1280x800.png differ diff --git a/unl0kr/screenshots/breezy-light-1440x720.png b/unl0kr/screenshots/breezy-light-1440x720.png index cf2e9dd..29c9027 100644 Binary files a/unl0kr/screenshots/breezy-light-1440x720.png and b/unl0kr/screenshots/breezy-light-1440x720.png differ diff --git a/unl0kr/screenshots/breezy-light-1920x1080.png b/unl0kr/screenshots/breezy-light-1920x1080.png index 964d4a9..9850657 100644 Binary files a/unl0kr/screenshots/breezy-light-1920x1080.png and b/unl0kr/screenshots/breezy-light-1920x1080.png differ diff --git a/unl0kr/screenshots/breezy-light-480x800.png b/unl0kr/screenshots/breezy-light-480x800.png index ad107f6..ce969d1 100644 Binary files a/unl0kr/screenshots/breezy-light-480x800.png and b/unl0kr/screenshots/breezy-light-480x800.png differ diff --git a/unl0kr/screenshots/breezy-light-540x960.png b/unl0kr/screenshots/breezy-light-540x960.png index 39b2788..91fc253 100644 Binary files a/unl0kr/screenshots/breezy-light-540x960.png and b/unl0kr/screenshots/breezy-light-540x960.png differ diff --git a/unl0kr/screenshots/breezy-light-768x1024.png b/unl0kr/screenshots/breezy-light-768x1024.png index 0bd78c6..7392097 100644 Binary files a/unl0kr/screenshots/breezy-light-768x1024.png and b/unl0kr/screenshots/breezy-light-768x1024.png differ diff --git a/unl0kr/screenshots/breezy-light-800x480.png b/unl0kr/screenshots/breezy-light-800x480.png index 5eecd66..accfeed 100644 Binary files a/unl0kr/screenshots/breezy-light-800x480.png and b/unl0kr/screenshots/breezy-light-800x480.png differ diff --git a/unl0kr/screenshots/breezy-light-960x540.png b/unl0kr/screenshots/breezy-light-960x540.png index 24e9e89..10413f3 100644 Binary files a/unl0kr/screenshots/breezy-light-960x540.png and b/unl0kr/screenshots/breezy-light-960x540.png differ diff --git a/unl0kr/screenshots/nord-dark-1024x768.png b/unl0kr/screenshots/nord-dark-1024x768.png new file mode 100644 index 0000000..b5cf68b Binary files /dev/null and b/unl0kr/screenshots/nord-dark-1024x768.png differ diff --git a/unl0kr/screenshots/nord-dark-1280x800.png b/unl0kr/screenshots/nord-dark-1280x800.png new file mode 100644 index 0000000..81059e9 Binary files /dev/null and b/unl0kr/screenshots/nord-dark-1280x800.png differ diff --git a/unl0kr/screenshots/nord-dark-1440x720.png b/unl0kr/screenshots/nord-dark-1440x720.png new file mode 100644 index 0000000..aac3917 Binary files /dev/null and b/unl0kr/screenshots/nord-dark-1440x720.png differ diff --git a/unl0kr/screenshots/nord-dark-1920x1080.png b/unl0kr/screenshots/nord-dark-1920x1080.png new file mode 100644 index 0000000..5736f80 Binary files /dev/null and b/unl0kr/screenshots/nord-dark-1920x1080.png differ diff --git a/unl0kr/screenshots/nord-dark-480x800.png b/unl0kr/screenshots/nord-dark-480x800.png new file mode 100644 index 0000000..8e90d4e Binary files /dev/null and b/unl0kr/screenshots/nord-dark-480x800.png differ diff --git a/unl0kr/screenshots/nord-dark-540x960.png b/unl0kr/screenshots/nord-dark-540x960.png new file mode 100644 index 0000000..ae72941 Binary files /dev/null and b/unl0kr/screenshots/nord-dark-540x960.png differ diff --git a/unl0kr/screenshots/nord-dark-768x1024.png b/unl0kr/screenshots/nord-dark-768x1024.png new file mode 100644 index 0000000..33c4ad5 Binary files /dev/null and b/unl0kr/screenshots/nord-dark-768x1024.png differ diff --git a/unl0kr/screenshots/nord-dark-800x480.png b/unl0kr/screenshots/nord-dark-800x480.png new file mode 100644 index 0000000..07fa1ba Binary files /dev/null and b/unl0kr/screenshots/nord-dark-800x480.png differ diff --git a/unl0kr/screenshots/nord-dark-960x540.png b/unl0kr/screenshots/nord-dark-960x540.png new file mode 100644 index 0000000..e9b06fa Binary files /dev/null and b/unl0kr/screenshots/nord-dark-960x540.png differ diff --git a/unl0kr/screenshots/nord-light-1024x768.png b/unl0kr/screenshots/nord-light-1024x768.png new file mode 100644 index 0000000..c4d36a3 Binary files /dev/null and b/unl0kr/screenshots/nord-light-1024x768.png differ diff --git a/unl0kr/screenshots/nord-light-1280x800.png b/unl0kr/screenshots/nord-light-1280x800.png new file mode 100644 index 0000000..e264754 Binary files /dev/null and b/unl0kr/screenshots/nord-light-1280x800.png differ diff --git a/unl0kr/screenshots/nord-light-1440x720.png b/unl0kr/screenshots/nord-light-1440x720.png new file mode 100644 index 0000000..07d3442 Binary files /dev/null and b/unl0kr/screenshots/nord-light-1440x720.png differ diff --git a/unl0kr/screenshots/nord-light-1920x1080.png b/unl0kr/screenshots/nord-light-1920x1080.png new file mode 100644 index 0000000..d4ab4b5 Binary files /dev/null and b/unl0kr/screenshots/nord-light-1920x1080.png differ diff --git a/unl0kr/screenshots/nord-light-480x800.png b/unl0kr/screenshots/nord-light-480x800.png new file mode 100644 index 0000000..efb986d Binary files /dev/null and b/unl0kr/screenshots/nord-light-480x800.png differ diff --git a/unl0kr/screenshots/nord-light-540x960.png b/unl0kr/screenshots/nord-light-540x960.png new file mode 100644 index 0000000..29957cc Binary files /dev/null and b/unl0kr/screenshots/nord-light-540x960.png differ diff --git a/unl0kr/screenshots/nord-light-768x1024.png b/unl0kr/screenshots/nord-light-768x1024.png new file mode 100644 index 0000000..4ffc781 Binary files /dev/null and b/unl0kr/screenshots/nord-light-768x1024.png differ diff --git a/unl0kr/screenshots/nord-light-800x480.png b/unl0kr/screenshots/nord-light-800x480.png new file mode 100644 index 0000000..213c916 Binary files /dev/null and b/unl0kr/screenshots/nord-light-800x480.png differ diff --git a/unl0kr/screenshots/nord-light-960x540.png b/unl0kr/screenshots/nord-light-960x540.png new file mode 100644 index 0000000..2146823 Binary files /dev/null and b/unl0kr/screenshots/nord-light-960x540.png differ diff --git a/unl0kr/screenshots/pmos-dark-1024x768.png b/unl0kr/screenshots/pmos-dark-1024x768.png index 2cd6cbb..4a1ed2a 100644 Binary files a/unl0kr/screenshots/pmos-dark-1024x768.png and b/unl0kr/screenshots/pmos-dark-1024x768.png differ diff --git a/unl0kr/screenshots/pmos-dark-1280x800.png b/unl0kr/screenshots/pmos-dark-1280x800.png index d5b6dcf..230134f 100644 Binary files a/unl0kr/screenshots/pmos-dark-1280x800.png and b/unl0kr/screenshots/pmos-dark-1280x800.png differ diff --git a/unl0kr/screenshots/pmos-dark-1440x720.png b/unl0kr/screenshots/pmos-dark-1440x720.png index 8f9a32e..6b99a5a 100644 Binary files a/unl0kr/screenshots/pmos-dark-1440x720.png and b/unl0kr/screenshots/pmos-dark-1440x720.png differ diff --git a/unl0kr/screenshots/pmos-dark-1920x1080.png b/unl0kr/screenshots/pmos-dark-1920x1080.png index 99e1348..b13459d 100644 Binary files a/unl0kr/screenshots/pmos-dark-1920x1080.png and b/unl0kr/screenshots/pmos-dark-1920x1080.png differ diff --git a/unl0kr/screenshots/pmos-dark-480x800.png b/unl0kr/screenshots/pmos-dark-480x800.png index e627bd9..d7731a7 100644 Binary files a/unl0kr/screenshots/pmos-dark-480x800.png and b/unl0kr/screenshots/pmos-dark-480x800.png differ diff --git a/unl0kr/screenshots/pmos-dark-540x960.png b/unl0kr/screenshots/pmos-dark-540x960.png index 1e92f02..3855955 100644 Binary files a/unl0kr/screenshots/pmos-dark-540x960.png and b/unl0kr/screenshots/pmos-dark-540x960.png differ diff --git a/unl0kr/screenshots/pmos-dark-768x1024.png b/unl0kr/screenshots/pmos-dark-768x1024.png index a58cb6d..7dd34ea 100644 Binary files a/unl0kr/screenshots/pmos-dark-768x1024.png and b/unl0kr/screenshots/pmos-dark-768x1024.png differ diff --git a/unl0kr/screenshots/pmos-dark-800x480.png b/unl0kr/screenshots/pmos-dark-800x480.png index 925dc4f..1b9f02b 100644 Binary files a/unl0kr/screenshots/pmos-dark-800x480.png and b/unl0kr/screenshots/pmos-dark-800x480.png differ diff --git a/unl0kr/screenshots/pmos-dark-960x540.png b/unl0kr/screenshots/pmos-dark-960x540.png index 395c205..198197f 100644 Binary files a/unl0kr/screenshots/pmos-dark-960x540.png and b/unl0kr/screenshots/pmos-dark-960x540.png differ diff --git a/unl0kr/screenshots/pmos-light-1024x768.png b/unl0kr/screenshots/pmos-light-1024x768.png index 966a356..9f87024 100644 Binary files a/unl0kr/screenshots/pmos-light-1024x768.png and b/unl0kr/screenshots/pmos-light-1024x768.png differ diff --git a/unl0kr/screenshots/pmos-light-1280x800.png b/unl0kr/screenshots/pmos-light-1280x800.png index be085fb..608e306 100644 Binary files a/unl0kr/screenshots/pmos-light-1280x800.png and b/unl0kr/screenshots/pmos-light-1280x800.png differ diff --git a/unl0kr/screenshots/pmos-light-1440x720.png b/unl0kr/screenshots/pmos-light-1440x720.png index fc53b5b..b2aed09 100644 Binary files a/unl0kr/screenshots/pmos-light-1440x720.png and b/unl0kr/screenshots/pmos-light-1440x720.png differ diff --git a/unl0kr/screenshots/pmos-light-1920x1080.png b/unl0kr/screenshots/pmos-light-1920x1080.png index 5c692ef..7ccd1b5 100644 Binary files a/unl0kr/screenshots/pmos-light-1920x1080.png and b/unl0kr/screenshots/pmos-light-1920x1080.png differ diff --git a/unl0kr/screenshots/pmos-light-480x800.png b/unl0kr/screenshots/pmos-light-480x800.png index a73cfab..e1fd5e7 100644 Binary files a/unl0kr/screenshots/pmos-light-480x800.png and b/unl0kr/screenshots/pmos-light-480x800.png differ diff --git a/unl0kr/screenshots/pmos-light-540x960.png b/unl0kr/screenshots/pmos-light-540x960.png index 5851701..e8f50cb 100644 Binary files a/unl0kr/screenshots/pmos-light-540x960.png and b/unl0kr/screenshots/pmos-light-540x960.png differ diff --git a/unl0kr/screenshots/pmos-light-768x1024.png b/unl0kr/screenshots/pmos-light-768x1024.png index 7e48332..6e4c846 100644 Binary files a/unl0kr/screenshots/pmos-light-768x1024.png and b/unl0kr/screenshots/pmos-light-768x1024.png differ diff --git a/unl0kr/screenshots/pmos-light-800x480.png b/unl0kr/screenshots/pmos-light-800x480.png index 3f21396..7e693c9 100644 Binary files a/unl0kr/screenshots/pmos-light-800x480.png and b/unl0kr/screenshots/pmos-light-800x480.png differ diff --git a/unl0kr/screenshots/pmos-light-960x540.png b/unl0kr/screenshots/pmos-light-960x540.png index 20de34a..e21be29 100644 Binary files a/unl0kr/screenshots/pmos-light-960x540.png and b/unl0kr/screenshots/pmos-light-960x540.png differ diff --git a/unl0kr/test/helpers.sh b/unl0kr/test/helpers.sh index ff36c88..c1f8636 100644 --- a/unl0kr/test/helpers.sh +++ b/unl0kr/test/helpers.sh @@ -1,18 +1,8 @@ #!/bin/bash -function info() { - echo -e "[Info] $1" -} +source "$(dirname "${BASH_SOURCE[0]}")/../../test/helpers.sh" -function error() { - echo -e "\e[31m[Error]\e[0m $1" -} - -function ok() { - echo -e "\e[32m[Ok]\e[0m $1" -} - -function run_unl0kr() { +function run_unl0kr_async() { local log=$1 local conf=$2 @@ -23,3 +13,13 @@ function run_unl0kr() { kill -9 $pid wait $pid > /dev/null 2>&1 } + +function run_unl0kr_sync() { + local log=$1 + shift + local conf=$2 + shift + local args=$@ + + ./_build/unl0kr -v -C "$conf" $@ > "$log" 2>&1 +} \ No newline at end of file diff --git a/unl0kr/test/test-uses-drm-backend-if-selected-via-config-and-available.sh b/unl0kr/test/test-uses-drm-backend-if-selected-via-config-and-available.sh index b4ed20a..2257a80 100755 --- a/unl0kr/test/test-uses-drm-backend-if-selected-via-config-and-available.sh +++ b/unl0kr/test/test-uses-drm-backend-if-selected-via-config-and-available.sh @@ -18,7 +18,7 @@ backend=drm EOF info "Running unl0kr" -run_unl0kr "$log" "$conf" +run_unl0kr_async "$log" "$conf" info "Verifying output" if ! grep "Using DRM backend" "$log"; then diff --git a/unl0kr/test/test-uses-fb-backend-by-default.sh b/unl0kr/test/test-uses-fb-backend-by-default.sh index 7e19b1b..3775bf5 100755 --- a/unl0kr/test/test-uses-fb-backend-by-default.sh +++ b/unl0kr/test/test-uses-fb-backend-by-default.sh @@ -11,7 +11,7 @@ function clean_up() { trap clean_up EXIT info "Running unl0kr" -run_unl0kr "$log" +run_unl0kr_async "$log" info "Verifying output" if ! grep "Using framebuffer backend" "$log"; then diff --git a/unl0kr/test/test-uses-fb-backend-if-drm-selected-via-config-but-unavailable.sh b/unl0kr/test/test-uses-fb-backend-if-drm-selected-via-config-but-unavailable.sh index 8f32427..717a09b 100755 --- a/unl0kr/test/test-uses-fb-backend-if-drm-selected-via-config-but-unavailable.sh +++ b/unl0kr/test/test-uses-fb-backend-if-drm-selected-via-config-but-unavailable.sh @@ -18,7 +18,7 @@ backend=drm EOF info "Running unl0kr" -run_unl0kr "$log" "$conf" +run_unl0kr_async "$log" "$conf" info "Verifying output" if ! grep "Using framebuffer backend" "$log"; then diff --git a/unl0kr/test/test-uses-fb-backend-if-selected-via-config.sh b/unl0kr/test/test-uses-fb-backend-if-selected-via-config.sh index fb585e8..31d4431 100755 --- a/unl0kr/test/test-uses-fb-backend-if-selected-via-config.sh +++ b/unl0kr/test/test-uses-fb-backend-if-selected-via-config.sh @@ -18,7 +18,7 @@ backend=fb EOF info "Running unl0kr" -run_unl0kr "$log" "$conf" +run_unl0kr_async "$log" "$conf" info "Verifying output" if ! grep "Using framebuffer backend" "$log"; then diff --git a/unl0kr/test/test-version-matches-meson-and-changelog.sh b/unl0kr/test/test-version-matches-meson-and-changelog.sh new file mode 100755 index 0000000..887ee83 --- /dev/null +++ b/unl0kr/test/test-version-matches-meson-and-changelog.sh @@ -0,0 +1,37 @@ +#!/bin/bash + +log=tmp.log + +root=$(dirname "${BASH_SOURCE[0]}") + +source "$root/helpers.sh" + +function clean_up() { + rm -f "$log" +} + +trap clean_up EXIT + +info "Querying version from build.meson" +meson_version=$(read_version_from_meson) + +info "Querying version from CHANGELOG.md" +changelog_version=$(read_version_from_changelog) + +info "Verifying versions" +if [[ "$meson_version" != "$changelog_version" ]]; then + error "Version $meson_version from meson.build doesn't match version $changelog_version from CHANGELOG.md" + exit 1 +fi + +info "Running unl0kr" +run_unl0kr_sync "$log" "$conf" -V + +info "Verifying output" +if ! grep "unl0kr $meson_version" "$log"; then + error "Expected version $meson_version" + cat "$log" + exit 1 +fi + +ok diff --git a/unl0kr/test/test-with-drm.sh b/unl0kr/test/test-with-drm.sh index 445dc33..8225510 100755 --- a/unl0kr/test/test-with-drm.sh +++ b/unl0kr/test/test-with-drm.sh @@ -4,13 +4,8 @@ root=$(dirname "${BASH_SOURCE[0]}") source "$root/helpers.sh" -function run() { - info "Executing $1" - "$1" - echo -} - -run "$root/build-with-drm.sh" -run "$root/test-uses-fb-backend-by-default.sh" -run "$root/test-uses-fb-backend-if-selected-via-config.sh" -run "$root/test-uses-drm-backend-if-selected-via-config-and-available.sh" +run_script "$root/build-with-drm.sh" +run_script "$root/test-version-matches-meson-and-changelog.sh" +run_script "$root/test-uses-fb-backend-by-default.sh" +run_script "$root/test-uses-fb-backend-if-selected-via-config.sh" +run_script "$root/test-uses-drm-backend-if-selected-via-config-and-available.sh" diff --git a/unl0kr/test/test-without-drm.sh b/unl0kr/test/test-without-drm.sh index 11e01fc..a8e86c9 100755 --- a/unl0kr/test/test-without-drm.sh +++ b/unl0kr/test/test-without-drm.sh @@ -4,13 +4,8 @@ root=$(dirname "${BASH_SOURCE[0]}") source "$root/helpers.sh" -function run() { - info "Executing $1" - "$1" - echo -} - -run "$root/build-without-drm.sh" -run "$root/test-uses-fb-backend-by-default.sh" -run "$root/test-uses-fb-backend-if-selected-via-config.sh" -run "$root/test-uses-fb-backend-if-drm-selected-via-config-but-unavailable.sh" +run_script "$root/build-without-drm.sh" +run_script "$root/test-version-matches-meson-and-changelog.sh" +run_script "$root/test-uses-fb-backend-by-default.sh" +run_script "$root/test-uses-fb-backend-if-selected-via-config.sh" +run_script "$root/test-uses-fb-backend-if-drm-selected-via-config-but-unavailable.sh"