feat(triggershell): replace demo scripts with openrgb-hue apply
Drop the triggershell init scaffold scripts and add one script that drives openrgb-hue apply: full option set as form fields, scene as a 103-entry dropdown, mapping defaulting to per-zone. The scene name goes through a small wrapper since it's a positional CLI arg and TriggerShell's passAs:arg can only emit --flag value pairs.
This commit is contained in:
@@ -16,6 +16,9 @@
|
||||
!.zshenv
|
||||
!.hushlogin
|
||||
!arty.yml
|
||||
!triggershell.yml
|
||||
!scripts/
|
||||
!scripts/openrgb-hue-apply.sh
|
||||
!bin/
|
||||
!bin/arty
|
||||
!bin/stacks
|
||||
|
||||
Executable
+4
@@ -0,0 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
exec /home/valknar/Projekte/openrgb-hue/.venv/bin/openrgb-hue apply "$SCENE" "$@"
|
||||
@@ -0,0 +1,284 @@
|
||||
# TriggerShell configuration.
|
||||
# Full reference: https://dev.pivoine.art/valknar/triggershell.git (see docs/CONFIG_REFERENCE.md)
|
||||
|
||||
server:
|
||||
host: 0.0.0.0
|
||||
port: 4173
|
||||
|
||||
auth:
|
||||
enabled: true
|
||||
# Must be >= 32 characters if auth is enabled. Kept out of this file - `triggershell init`
|
||||
# generated one into .env (TRIGGERSHELL_SESSION_SECRET) alongside this config.
|
||||
sessionSecret: "${TRIGGERSHELL_SESSION_SECRET}"
|
||||
sessionTtlHours: 12
|
||||
users:
|
||||
- username: admin
|
||||
passwordHash: ${TRIGGERSHELL_USER_ADMIN_PASSWORD_HASH}
|
||||
# Add a user with: triggershell users add <username>
|
||||
tokens:
|
||||
- name: test-verification
|
||||
tokenHash: ${TRIGGERSHELL_TOKEN_TEST_VERIFICATION_HASH}
|
||||
# Add an API token with: triggershell users add-token <name>
|
||||
|
||||
database:
|
||||
path: .triggershell/triggershell.db
|
||||
|
||||
logs:
|
||||
dir: .triggershell/logs
|
||||
retentionDays: 30
|
||||
|
||||
scripts:
|
||||
- id: openrgb-hue-apply
|
||||
name: "OpenRGB: Apply Hue Scene"
|
||||
description: Apply a Philips Hue scene as a static color gradient across OpenRGB-controlled lights (motherboard, GPU, RAM, etc).
|
||||
command: bash
|
||||
args: ["./scripts/openrgb-hue-apply.sh"]
|
||||
cwd: ./
|
||||
timeoutSeconds: 30
|
||||
variables:
|
||||
- name: scene
|
||||
label: Scene
|
||||
description: Philips Hue scene to render as a gradient.
|
||||
type: enum
|
||||
required: true
|
||||
control: select
|
||||
passAs: env
|
||||
envName: SCENE
|
||||
choices:
|
||||
- "Tropical twilight"
|
||||
- "Blossom"
|
||||
- "Bright"
|
||||
- "Savanna sunset"
|
||||
- "Relax"
|
||||
- "Energize"
|
||||
- "Dreamy dusk"
|
||||
- "Concentrate"
|
||||
- "Warm embrace"
|
||||
- "Golden pond"
|
||||
- "Honolulu"
|
||||
- "Rest"
|
||||
- "Ruby glow"
|
||||
- "Rolling hills"
|
||||
- "Precious"
|
||||
- "Cool bright"
|
||||
- "Mountain breeze"
|
||||
- "Read"
|
||||
- "Dimmed"
|
||||
- "Narcissa"
|
||||
- "Crocus"
|
||||
- "Nightlight"
|
||||
- "São Paulo"
|
||||
- "Ruby romance"
|
||||
- "Sunset allure"
|
||||
- "Smitten"
|
||||
- "Promise"
|
||||
- "City of love"
|
||||
- "Lovebirds"
|
||||
- "Glitz and glam"
|
||||
- "Nighttime"
|
||||
- "Unwind"
|
||||
- "Shine"
|
||||
- "Sleepy"
|
||||
- "Storybook"
|
||||
- "Arise"
|
||||
- "Baby's breath"
|
||||
- "Malibu pink"
|
||||
- "Rio"
|
||||
- "Ibiza"
|
||||
- "Tokyo"
|
||||
- "Fairfax"
|
||||
- "Cancun"
|
||||
- "Chinatown"
|
||||
- "Osaka"
|
||||
- "Motown"
|
||||
- "Galaxy"
|
||||
- "Blood moon"
|
||||
- "Moonlight"
|
||||
- "Starlight"
|
||||
- "Arctic aurora"
|
||||
- "Nebula"
|
||||
- "Ocean dawn"
|
||||
- "Sunday morning"
|
||||
- "Spring blossom"
|
||||
- "Lake mist"
|
||||
- "Frosty dawn"
|
||||
- "Emerald isle"
|
||||
- "Beginnings"
|
||||
- "Horizon"
|
||||
- "Sunflare"
|
||||
- "First light"
|
||||
- "Valley dawn"
|
||||
- "Emerald flutter"
|
||||
- "Memento"
|
||||
- "Resplendent"
|
||||
- "Scarlet dream"
|
||||
- "Amethyst valley"
|
||||
- "Hazy days"
|
||||
- "Autumn gold"
|
||||
- "Winter mountain"
|
||||
- "Misty ridge"
|
||||
- "Midsummer sun"
|
||||
- "Spring lake"
|
||||
- "Midwinter"
|
||||
- "Amber bloom"
|
||||
- "Painted sky"
|
||||
- "Orange fields"
|
||||
- "Blue Planet"
|
||||
- "Lily"
|
||||
- "Winter beauty"
|
||||
- "Forest adventure"
|
||||
- "Meriete"
|
||||
- "Soho"
|
||||
- "Magneto"
|
||||
- "Disturbia"
|
||||
- "Vapor wave"
|
||||
- "Tyrell"
|
||||
- "Hal"
|
||||
- "Still waters"
|
||||
- "Pensive"
|
||||
- "Sundown"
|
||||
- "Palm Beach"
|
||||
- "Adrift"
|
||||
- "Majestic morning"
|
||||
- "Blue lagoon"
|
||||
- "Lake Placid"
|
||||
- "Zandvoort"
|
||||
- "Miami"
|
||||
- "Bahrain"
|
||||
- "Singapore"
|
||||
- "Silverstone"
|
||||
- "Suzuka"
|
||||
|
||||
- name: mapping
|
||||
label: Mapping Mode
|
||||
description: How the gradient is laid out across your LEDs.
|
||||
type: enum
|
||||
choices: [sequence, per-device, per-zone, matrix, mirror, shuffle]
|
||||
default: per-zone
|
||||
control: select
|
||||
passAs: arg
|
||||
argName: --mapping
|
||||
|
||||
- name: direction
|
||||
label: Matrix Direction
|
||||
description: Only used when mapping is "matrix".
|
||||
type: enum
|
||||
choices: [left-right, top-bottom, diagonal, radial]
|
||||
default: left-right
|
||||
control: select
|
||||
passAs: arg
|
||||
argName: --direction
|
||||
|
||||
- name: deviceType
|
||||
label: Device Type
|
||||
description: Limit to devices of this type. Leave unset to target every device.
|
||||
type: enum
|
||||
required: false
|
||||
choices: [DRAM, GPU, MOTHERBOARD]
|
||||
control: select
|
||||
passAs: arg
|
||||
argName: --device-type
|
||||
|
||||
- name: device
|
||||
label: Device
|
||||
description: Limit to a single device by name. Leave unset to target every device.
|
||||
type: enum
|
||||
required: false
|
||||
choices:
|
||||
- "Corsair Vengeance RGB DDR5"
|
||||
- "Gigabyte GeForce RTX 3060 Gaming OC"
|
||||
- "MSI MYSTIC LIGHT"
|
||||
control: select
|
||||
passAs: arg
|
||||
argName: --device
|
||||
|
||||
- name: zone
|
||||
label: Zone
|
||||
description: Limit to a single zone by name. Leave unset to target every zone.
|
||||
type: enum
|
||||
required: false
|
||||
choices:
|
||||
- "Corsair DRAM"
|
||||
- "GPU Zone"
|
||||
- "JAF"
|
||||
- "JARGB 1"
|
||||
- "JARGB 2"
|
||||
- "JARGB 3"
|
||||
control: select
|
||||
passAs: arg
|
||||
argName: --zone
|
||||
|
||||
- name: seed
|
||||
label: Shuffle Seed
|
||||
description: Only used when mapping is "shuffle".
|
||||
type: number
|
||||
default: 0
|
||||
passAs: arg
|
||||
argName: --seed
|
||||
|
||||
- name: interpolation
|
||||
label: Interpolation
|
||||
description: Color space used to interpolate between gradient stops.
|
||||
type: enum
|
||||
choices: [rgb, hsv]
|
||||
default: hsv
|
||||
control: select
|
||||
passAs: arg
|
||||
argName: --interpolation
|
||||
|
||||
- name: dim
|
||||
label: Dim
|
||||
description: Global brightness multiplier (0-1), independent of the scene's own brightness.
|
||||
type: number
|
||||
default: 1.0
|
||||
min: 0
|
||||
max: 1
|
||||
step: 0.05
|
||||
control: slider
|
||||
passAs: arg
|
||||
argName: --dim
|
||||
|
||||
- name: noDedupe
|
||||
label: Disable Color Deduping
|
||||
description: Keep consecutive duplicate colors instead of collapsing them into one gradient stop.
|
||||
type: boolean
|
||||
default: false
|
||||
control: switch
|
||||
passAs: flag
|
||||
argName: --no-dedupe
|
||||
|
||||
- name: noBrightness
|
||||
label: Ignore Scene Brightness
|
||||
description: Don't scale each gradient stop by the scene's recorded light brightness.
|
||||
type: boolean
|
||||
default: false
|
||||
control: switch
|
||||
passAs: flag
|
||||
argName: --no-brightness
|
||||
|
||||
- name: fast
|
||||
label: Fast Mode
|
||||
description: Use OpenRGB's no-readback fast update mode.
|
||||
type: boolean
|
||||
default: false
|
||||
control: switch
|
||||
passAs: flag
|
||||
argName: --fast
|
||||
|
||||
- name: dryRun
|
||||
label: Dry Run
|
||||
description: Preview the result without touching real hardware.
|
||||
type: boolean
|
||||
default: false
|
||||
control: switch
|
||||
passAs: flag
|
||||
argName: --dry-run
|
||||
|
||||
- name: dryRunLeds
|
||||
label: Dry Run LED Count
|
||||
description: Number of synthetic flat LEDs to use for Dry Run. Ignored otherwise.
|
||||
type: number
|
||||
required: false
|
||||
min: 1
|
||||
passAs: arg
|
||||
argName: --dry-run-leds
|
||||
Reference in New Issue
Block a user