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
|
!.zshenv
|
||||||
!.hushlogin
|
!.hushlogin
|
||||||
!arty.yml
|
!arty.yml
|
||||||
|
!triggershell.yml
|
||||||
|
!scripts/
|
||||||
|
!scripts/openrgb-hue-apply.sh
|
||||||
!bin/
|
!bin/
|
||||||
!bin/arty
|
!bin/arty
|
||||||
!bin/stacks
|
!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