nixos: gen 169 @ nix-pad — 2026-07-30 23:55
26.05.20260724.597283a (Yarara) on screen keyboard via wvkbd
This commit is contained in:
Generated
+18
-1
@@ -188,7 +188,24 @@
|
||||
"home-manager": "home-manager",
|
||||
"niri": "niri",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"nixpkgs-unstable": "nixpkgs-unstable"
|
||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||
"wvkbd-src": "wvkbd-src"
|
||||
}
|
||||
},
|
||||
"wvkbd-src": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1784927765,
|
||||
"narHash": "sha256-Et1k3M8L/r5WnoNOuiCzVVgJrpXtWSbIUI+2/njiwj0=",
|
||||
"owner": "jjsullivan5196",
|
||||
"repo": "wvkbd",
|
||||
"rev": "6b41504a0cb58fd1163fa44692398fbd61f8905f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "jjsullivan5196",
|
||||
"repo": "wvkbd",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"xwayland-satellite-stable": {
|
||||
|
||||
@@ -11,6 +11,11 @@
|
||||
|
||||
niri.url = "github:sodiboo/niri-flake";
|
||||
|
||||
wvkbd-src = {
|
||||
url = "github:jjsullivan5196/wvkbd";
|
||||
flake = false;
|
||||
};
|
||||
|
||||
dms-plugin-registry = {
|
||||
url = "github:AvengeMedia/dms-plugin-registry";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
@@ -22,7 +27,7 @@
|
||||
};
|
||||
};
|
||||
|
||||
outputs = { nixpkgs, home-manager, niri, dms-plugin-registry, danksearch, ... }@inputs: {
|
||||
outputs = { nixpkgs, home-manager, niri, dms-plugin-registry, danksearch, wvkbd-src, ... }@inputs: {
|
||||
nixosConfigurations = {
|
||||
thinkpad = nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
|
||||
+9
-14
@@ -14,28 +14,23 @@ let
|
||||
-g "3,UD,*,*,P,niri msg action focus-workspace-up && sleep 0.4" \
|
||||
-g "3,DU,*,*,P,niri msg action focus-workspace-down && sleep 0.4" \
|
||||
-g "4,DU,*,*,P,dms ipc spotlight toggle && sleep 0.4"
|
||||
-g "2,DU,B,*,pkill -RTMIN wvkbd-mobintl"
|
||||
fi
|
||||
'';
|
||||
|
||||
launch-wvkbd = pkgs.writeShellScriptBin "launch-wvkbd" ''
|
||||
# Adjust this path to wherever dank-material-shell drops its color file
|
||||
THEME_CACHE="$HOME/.cache/DankMaterialShell/dms-colors.json"
|
||||
|
||||
|
||||
if [ -f "$THEME_CACHE" ]; then
|
||||
# Parse hex tokens directly out of the active shell profile
|
||||
BG=$(jq -r '.colors.surface' "$THEME_CACHE")
|
||||
FG=$(jq -r '.colors.surface_container' "$THEME_CACHE")
|
||||
TXT=$(jq -r '.colors.on_surface' "$THEME_CACHE")
|
||||
PRIMARY=$(jq -r '.colors.primary' "$THEME_CACHE")
|
||||
ON_PRIMARY=$(jq -r '.colors.on_primary' "$THEME_CACHE")
|
||||
BG=$(jq -r '.["colors"]["dark"]["background"]' "$THEME_CACHE" | tr -d '#')
|
||||
FG=$(jq -r '.["colors"]["dark"]["surface_container_lowest"]' "$THEME_CACHE" | tr -d '#')
|
||||
TXT=$(jq -r '.["colors"]["dark"]["on_background"]' "$THEME_CACHE" | tr -d '#')
|
||||
PRIMARY=$(jq -r '.["colors"]["dark"]["surface_container_lowest"]' "$THEME_CACHE" | tr -d '#')
|
||||
ON_PRIMARY=$(jq -r '.["colors"]["dark"]["on_background"]' "$THEME_CACHE" | tr -d '#')
|
||||
|
||||
${pkgs.wvkbd}/bin/wvkbd-mobintl --layer overlay --hidden \
|
||||
--bg "$BG" --fg "$FG" --text "$TXT" \
|
||||
--fg-sp "$PRIMARY" --text-sp "$ON_PRIMARY" \
|
||||
-L 300
|
||||
wvkbd-mobintl --hidden --bg "$BG" --press "$BG" --fg "$FG" --text "$TXT" --fg-sp "$PRIMARY" --text-sp "$ON_PRIMARY" -L 300
|
||||
else
|
||||
# Default fallback if the shell cache isn't built yet
|
||||
${pkgs.wvkbd}/bin/wvkbd-mobintl --layer overlay --hidden
|
||||
wvkbd-mobintl --hidden
|
||||
fi
|
||||
'';
|
||||
in
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
{ pkgs, config, ... }:
|
||||
|
||||
{
|
||||
|
||||
}
|
||||
+22
-1
@@ -1,5 +1,23 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
{ config, lib, pkgs, inputs, ... }:
|
||||
|
||||
let
|
||||
# Compile your custom wvkbd build
|
||||
custom_wvkbd = pkgs.wvkbd.overrideAttrs (oldAttrs: {
|
||||
# Pin the package version to the exact commit from your flake input
|
||||
src = inputs.wvkbd-src;
|
||||
version = "custom-git";
|
||||
|
||||
# Choose your preferred layout layout (e.g., mobintl, standard, cyrillic)
|
||||
makeFlags = (oldAttrs.makeFlags or []) ++ [ "LAYOUT=mobintl" ];
|
||||
|
||||
# Optional: Swap out the layout with your own config.h file if you have one
|
||||
preBuild = ''
|
||||
cp ${./programs/layout.custom.h} layout.mobintl.h
|
||||
cp ${./programs/config.custom.h} config.mobintl.h
|
||||
cp ${./programs/keymap.custom.h} keymap.mobintl.h
|
||||
'';
|
||||
});
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
./programs
|
||||
@@ -38,8 +56,11 @@
|
||||
steam
|
||||
spotify
|
||||
vlc
|
||||
wtype
|
||||
yt-dlp
|
||||
|
||||
custom_wvkbd
|
||||
|
||||
(pkgs.writeShellScriptBin "find-open-port" ''
|
||||
if [ -z "$1" ]; then
|
||||
echo "Please provide an application name, project directory, or other identifier."
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
#ifndef config_h_INCLUDED
|
||||
#define config_h_INCLUDED
|
||||
|
||||
#define DEFAULT_FONT "Sans 14"
|
||||
#define DEFAULT_ROUNDING 5
|
||||
#define SHIFT_SPACE_IS_TAB
|
||||
static const int transparency = 255;
|
||||
|
||||
struct clr_scheme schemes[] = {
|
||||
{
|
||||
/* colors */
|
||||
.bg = {.bgra = {15, 15, 15, transparency}},
|
||||
.fg = {.bgra = {45, 45, 45, transparency}},
|
||||
.high = {.bgra = {100, 100, 100, transparency}},
|
||||
.swipe = {.bgra = {100, 255, 100, 64}},
|
||||
.text = {.color = UINT32_MAX},
|
||||
.text_press = {.color = UINT32_MAX},
|
||||
.text_swipe = {.color = UINT32_MAX},
|
||||
.font = DEFAULT_FONT,
|
||||
.rounding = DEFAULT_ROUNDING,
|
||||
},
|
||||
{
|
||||
/* colors */
|
||||
.bg = {.bgra = {15, 15, 15, transparency}},
|
||||
.fg = {.bgra = {32, 32, 32, transparency}},
|
||||
.high = {.bgra = {100, 100, 100, transparency}},
|
||||
.swipe = {.bgra = {100, 255, 100, 64}},
|
||||
.text_press = {.color = UINT32_MAX},
|
||||
.text_swipe = {.color = UINT32_MAX},
|
||||
.text = {.color = UINT32_MAX},
|
||||
.font = DEFAULT_FONT,
|
||||
.rounding = DEFAULT_ROUNDING,
|
||||
}
|
||||
};
|
||||
|
||||
/* layers is an ordered list of layouts, used to cycle through */
|
||||
static enum layout_id layers[] = {
|
||||
Full, // First layout is the default layout on startup
|
||||
Special,
|
||||
NumLayouts // signals the last item, may not be omitted
|
||||
};
|
||||
|
||||
/* layers is an ordered list of layouts, used to cycle through */
|
||||
static enum layout_id landscape_layers[] = {
|
||||
Landscape, // First layout is the default layout on startup
|
||||
LandscapeSpecial,
|
||||
NumLayouts // signals the last item, may not be omitted
|
||||
};
|
||||
|
||||
#endif // config_h_INCLUDED
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -36,7 +36,6 @@
|
||||
v4l-utils
|
||||
vim
|
||||
wget
|
||||
wvkbd
|
||||
xclip
|
||||
xournalpp
|
||||
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
#!/bin/sh
|
||||
# Adjust this path to wherever dank-material-shell drops its color file
|
||||
THEME_CACHE="$HOME/.cache/DankMaterialShell/dms-colors.json"
|
||||
|
||||
if [ -f "$THEME_CACHE" ]; then
|
||||
# Parse hex tokens directly out of the active shell profile
|
||||
BG=$(jq -r '.["colors"]["dark"]["background"]' "$THEME_CACHE" | tr -d '#')
|
||||
FG=$(jq -r '.["colors"]["dark"]["surface_container_lowest"]' "$THEME_CACHE" | tr -d '#')
|
||||
TXT=$(jq -r '.["colors"]["dark"]["on_background"]' "$THEME_CACHE" | tr -d '#')
|
||||
PRIMARY=$(jq -r '.["colors"]["dark"]["surface_container_lowest"]' "$THEME_CACHE" | tr -d '#')
|
||||
ON_PRIMARY=$(jq -r '.["colors"]["dark"]["on_background"]' "$THEME_CACHE" | tr -d '#')
|
||||
|
||||
echo -e "BG: $BG\nFG: $FG\nText: $TXT\nFG-Special: $PRIMARY\nText-Special: $ON_PRIMARY\n"
|
||||
|
||||
wvkbd-mobintl --hidden --bg "$BG" --press "$BG" --fg "$FG" --text "$TXT" --fg-sp "$PRIMARY" --text-sp "$ON_PRIMARY" -L 300
|
||||
else
|
||||
# Default fallback if the shell cache isn't built yet
|
||||
wvkbd-mobintl --hidden
|
||||
fi
|
||||
Reference in New Issue
Block a user