buffybox: 3.2.0 -> 3.2.0-unstable-2024-10-05

with my patches, this gets much better CPU use

project has bee refactored so that it builds both unl0kr *and* buffyboard
This commit is contained in:
2024-10-05 12:45:20 +00:00
parent 3da1f78ff5
commit 9ab10627ab
3 changed files with 72 additions and 50 deletions

View File

@@ -15,7 +15,7 @@ in
{
options.sane.services.buffyboard = with lib; {
enable = mkEnableOption "buffyboard framebuffer keyboard";
package = mkPackageOption pkgs "buffyboard" {};
package = mkPackageOption pkgs "buffybox" {};
extraFlags = mkOption {
type = types.listOf types.str;
default = [];
@@ -82,7 +82,7 @@ in
before = [ "getty.target" ];
serviceConfig.Type = "simple";
serviceConfig.ExecStart = "${lib.getExe cfg.package} ${lib.escapeShellArgs cfg.extraFlags}";
serviceConfig.ExecStart = "${lib.getExe' cfg.package "buffyboard"} ${lib.escapeShellArgs cfg.extraFlags}";
serviceConfig.Restart = "on-failure";
serviceConfig.RestartSec = "2s";
# TODO: sandboxing

View File

@@ -1,48 +0,0 @@
{
fetchFromGitLab,
inih,
lib,
libinput,
meson,
ninja,
pkg-config,
stdenv,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "buffyboard";
version = "3.2.0";
src = fetchFromGitLab {
domain = "gitlab.com";
owner = "postmarketOS";
repo = "buffybox";
rev = finalAttrs.version;
fetchSubmodules = true; # to use its vendored lvgl
hash = "sha256-nZX7mSY9IBIhVNmOD6mXI1IF2TgyKLc00a8ADAvVLB0=";
};
sourceRoot = "source/buffyboard";
nativeBuildInputs = [
meson
ninja
pkg-config
];
buildInputs = [
inih
libinput
];
strictDeps = true;
meta = with lib; {
description = "touch-enabled on-screen keyboard running on the Linux framebuffer";
mainProgram = "buffyboard";
homepage = "https://gitlab.com/postmarketOS/buffybox";
license = licenses.gpl3Plus;
maintainers = with lib.maintainers; [ colinsane ];
platforms = platforms.linux;
};
})

View File

@@ -0,0 +1,70 @@
{
fetchFromGitLab,
fetchFromGitea,
inih,
lib,
libdrm,
libinput,
libxkbcommon,
meson,
ninja,
pkg-config,
scdoc,
stdenv,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "buffybox";
version = "3.2.0-unstable-2024-10-05";
# TODO: upstream my changes:
# - cross compilation fix
# - sleep instead of poll (CPU reduction)
# - however, this doesn't reduce CPU *enough*. it's still 10% at idle on lappy.
# src = fetchFromGitLab {
# domain = "gitlab.com";
# owner = "postmarketOS";
# repo = "buffybox";
# rev = finalAttrs.version;
# fetchSubmodules = true; # to use its vendored lvgl
# hash = "sha256-nZX7mSY9IBIhVNmOD6mXI1IF2TgyKLc00a8ADAvVLB0=";
# };
src = fetchFromGitea {
domain = "git.uninsane.org";
owner = "colin";
repo = "buffybox";
rev = "671626a565755bdaa2d2abfef17fe263d56bfdc7";
fetchSubmodules = true; # to use its vendored lvgl
hash = "sha256-jv2cwnR3BVGOERmG39LXhf9ikgOhbil+y/nNqt/zPHw=";
};
depsBuildBuild = [
pkg-config
];
nativeBuildInputs = [
meson
ninja
pkg-config
scdoc
];
buildInputs = [
inih
libdrm
libinput
libxkbcommon
];
strictDeps = true;
meta = with lib; {
description = "a suite of graphical applications for the terminal";
homepage = "https://gitlab.com/postmarketOS/buffybox";
license = licenses.gpl3Plus;
maintainers = with lib.maintainers; [ colinsane ];
platforms = platforms.linux;
};
})