Track Syndicate server configuration
This commit is contained in:
parent
46bbee6090
commit
dcd822e6ec
|
@ -23,4 +23,4 @@ NIM_FLAGS = --noNimblePath
|
|||
!preserves_schemac = | $(BIN_DIR)/<schemac> |> ^o^ $(BIN_DIR)/schemac |>
|
||||
|
||||
SYNDICATE_CONFIG_DIR = $(TUP_CWD)/config
|
||||
!assert_built = |> ^ <built "%b" …>^ echo "<built \"%b\" \"`realpath %f`\" \"`b2sum -l 32 %f | { read sum rest ; echo $sum; }`\">" > %o |> $(SYNDICATE_CONFIG_DIR)/built/%b.pr
|
||||
!assert_built = |> ^ <built "%b" …>^ echo "<built %b \"`realpath %f`\" \"`b2sum -l 32 %f | { read sum rest ; echo $sum; }`\">" > %o |> $(SYNDICATE_CONFIG_DIR)/built/%b.pr
|
||||
|
|
|
@ -0,0 +1,28 @@
|
|||
? <mpv ?mpv> $mpv [
|
||||
|
||||
$config ? <socketspace ?beepSpace> [
|
||||
$beepSpace ?? <beep 0> [
|
||||
$mpv ! <play-file "/home/emery/lib/syndicate/lcars-0.mp3">
|
||||
]
|
||||
$beepSpace ?? <beep 1> [
|
||||
$mpv ! <play-file "/home/emery/star-trek-audio/www.trekcore.com/audio/computer/consolewarning.mp3">
|
||||
]
|
||||
]
|
||||
|
||||
$config ? <machine-dataspace ?ds> $ds [
|
||||
?? <acpi_event "button/power" _ _ _> [
|
||||
$mpv ! <play-file "/home/emery/star-trek-audio/www.trekcore.com/audio/toscomputer/tos_computerthinking1_ep.mp3">
|
||||
]
|
||||
|
||||
?? <acpi_event "ac_adapter" _ _ 256> [
|
||||
$mpv ! <play-file "/home/emery/star-trek-audio/www.trekcore.com/audio/computer/computerbeep_6.mp3">
|
||||
]
|
||||
?? <acpi_event "ac_adapter" _ _ 0> [
|
||||
$mpv ! <play-file "/home/emery/star-trek-audio/www.trekcore.com/audio/computer/alert24.mp3">
|
||||
]
|
||||
]
|
||||
|
||||
$config ? <built _ _ ?hash> [
|
||||
$mpv ! <play-file "/home/emery/star-trek-audio/www.trekcore.com/audio/computer/computerbeep_26.mp3">
|
||||
]
|
||||
]
|
|
@ -0,0 +1 @@
|
|||
*.pr
|
|
@ -0,0 +1,18 @@
|
|||
<require-service <daemon acme>>
|
||||
; <depends-on <daemon acme> <service-state <daemon fontsrv> ready>>
|
||||
|
||||
; <depends-on <daemon acme> <service-state <milestone wayland> ready>>
|
||||
; <depends-on <daemon acme> <service-state <daemon plumber> ready>>
|
||||
; <require-service <daemon plumber>>
|
||||
|
||||
<daemon acme {
|
||||
argv: ["/etc/profiles/per-user/emery/bin/9" "acme" "-f" "/mnt/font/FiraSans-Regular/12a/font" "-F" "/mnt/font/FiraCode-Light/10a/font"]
|
||||
protocol: none}>
|
||||
|
||||
<daemon fontsrv {
|
||||
argv: "/etc/profiles/per-user/emery/bin/9 fontsrv"
|
||||
protocol: none}>
|
||||
|
||||
<daemon plumber {
|
||||
argv: "/etc/profiles/per-user/emery/bin/9 plumber -f"
|
||||
protocol: none}>
|
|
@ -0,0 +1,23 @@
|
|||
? <machine-dataspace ?machine> [
|
||||
|
||||
<require-service <daemon acpi_actor>>
|
||||
|
||||
? <built acpi_actor ?path ?sum> [
|
||||
<daemon acpi_actor {
|
||||
argv: [$path]
|
||||
protocol: application/syndicate
|
||||
env: {
|
||||
BUILD_SUM: $sum
|
||||
}
|
||||
}>
|
||||
]
|
||||
|
||||
? <service-object <daemon acpi_actor> ?cap> [
|
||||
$cap { machine: $machine }
|
||||
]
|
||||
|
||||
$machine ?? <acpi_event ?class ?bus ?type ?data> [
|
||||
$log ! <log "-" { acpi_event: <acpi_event $class $bus $type $data > }>
|
||||
]
|
||||
|
||||
]
|
|
@ -0,0 +1,8 @@
|
|||
<require-service <daemon swaybg>>
|
||||
<daemon swaybg {
|
||||
argv: ["swaybg" "-m" "tile" "-i" "/home/emery/tiles/background.png" ]
|
||||
env: {
|
||||
WAYLAND_DISPLAY: "wayland-1"
|
||||
}
|
||||
protocol: none
|
||||
}>
|
|
@ -0,0 +1,22 @@
|
|||
? <typespace ?typespace> [
|
||||
|
||||
<require-service <daemon fontconfig_actor>>
|
||||
|
||||
? <built fontconfig_actor ?path ?sum> [
|
||||
<daemon fontconfig_actor {
|
||||
argv: [$path]
|
||||
protocol: application/syndicate
|
||||
env: {
|
||||
BUILD_HASH: $sum
|
||||
}
|
||||
}>
|
||||
]
|
||||
|
||||
? <service-object <daemon fontconfig_actor> ?cap> [
|
||||
$cap { dataspace: $typespace }
|
||||
]
|
||||
|
||||
$typespace ? <fontconfig {size: 8.0, spacing: proportional} ?properties> [
|
||||
$log ! <log "-" { line: <fontconfig $properties> }>
|
||||
]
|
||||
]
|
|
@ -0,0 +1,16 @@
|
|||
; <require-service <daemon jabber_actor>>
|
||||
|
||||
? <built jabber_actor ?path ?sum> [
|
||||
<daemon jabber_actor {
|
||||
argv: [ $path ]
|
||||
protocol: application/syndicate
|
||||
env: { BUILD_HASH: $sum }
|
||||
}>
|
||||
|
||||
let ?client-dataspace = dataspace
|
||||
|
||||
? <service-object <daemon jabber_actor> ?cap> [
|
||||
$cap <xmpp-client "foo@spam.works" "bar" $client-dataspace>
|
||||
]
|
||||
|
||||
]
|
|
@ -0,0 +1,17 @@
|
|||
<require-service <daemon libnotify_actor>>
|
||||
? <built libnotify_actor ?path ?sum> [
|
||||
<daemon libnotify_actor {
|
||||
argv: [$path]
|
||||
protocol: application/syndicate
|
||||
env: {
|
||||
; SYNDICATE_DEBUG: "1"
|
||||
BUILD_SUM: $sum
|
||||
}
|
||||
}>
|
||||
]
|
||||
|
||||
? <notifications ?notifyspace> [
|
||||
? <service-object <daemon libnotify_actor> ?cap> [
|
||||
$cap { dataspace: $notifyspace }
|
||||
]
|
||||
]
|
|
@ -0,0 +1,55 @@
|
|||
let ?socketPath = "/run/user/1000/mpv.sock"
|
||||
|
||||
let ?mpvSpace = dataspace
|
||||
$mpvSpace [
|
||||
; announce the dataspace when the translator is connected
|
||||
? <connected $socketPath> [
|
||||
$config <mpv $mpvSpace>
|
||||
]
|
||||
|
||||
; translate <play-file …> to an MPV command
|
||||
?? <play-file ?file> [
|
||||
! <send-json { "command": ["loadfile" $file "append-play"] }>
|
||||
]
|
||||
|
||||
; log anything that comes back from MPV
|
||||
; ?? <recv-json ?js> [ $log ! <log "-" { mpv: $js }> ]
|
||||
|
||||
; clear the playlist on idle so it doesn't grow indefinitely
|
||||
?? <recv-json {"event": "idle"}> [
|
||||
! <send-json { "command": ["playlist-clear"] }>
|
||||
]
|
||||
]
|
||||
|
||||
; need the translator and the translator needs the daemon
|
||||
<require-service <daemon mpv-translator>>
|
||||
<depends-on <daemon mpv-translator> <service-state <daemon mpv-server> ready>>
|
||||
|
||||
? <service-object <daemon mpv-translator> ?cap> [
|
||||
$cap {
|
||||
dataspace: $mpvSpace
|
||||
socket: $socketPath
|
||||
}
|
||||
]
|
||||
|
||||
; assert and retract the daemon as the daemon is built (this is a testing artifact)
|
||||
? <built json_socket_translator ?path ?sum> [
|
||||
|
||||
<daemon mpv-translator {
|
||||
argv: [$path]
|
||||
protocol: application/syndicate
|
||||
env: {BUILD_SUM: $sum}
|
||||
}>
|
||||
]
|
||||
|
||||
; start mpv regardless
|
||||
<daemon mpv-server {
|
||||
argv: [
|
||||
"/run/current-system/sw/bin/mpv"
|
||||
"--really-quiet"
|
||||
"--idle=yes"
|
||||
"--no-audio-display"
|
||||
"--input-ipc-server=/run/user/1000/mpv.sock"
|
||||
]
|
||||
protocol: none
|
||||
}>
|
|
@ -0,0 +1,19 @@
|
|||
<require-service <daemon nix_actor>>
|
||||
|
||||
? <built nix_actor ?path ?sum> [
|
||||
<daemon nix_actor {
|
||||
argv: [$path]
|
||||
protocol: application/syndicate
|
||||
env: {
|
||||
BUILD_SUM: $sum
|
||||
}
|
||||
}>
|
||||
]
|
||||
|
||||
? <nixspace ?nixspace> [
|
||||
? <service-object <daemon nix_actor> ?cap> [
|
||||
$cap {
|
||||
dataspace: $nixspace
|
||||
}
|
||||
]
|
||||
]
|
|
@ -0,0 +1,4 @@
|
|||
; <require-service <daemon psi>>
|
||||
<daemon psi {
|
||||
argv: "/run/current-system/sw/bin/psi-plus"
|
||||
protocol: none}>
|
|
@ -0,0 +1,21 @@
|
|||
? <chat-history ?history> [
|
||||
|
||||
; <require-service <daemon simplex_history_actor>>
|
||||
|
||||
? <built simplex_history_actor ?path ?sum> [
|
||||
<daemon simplex_history_actor {
|
||||
argv: [ $path ]
|
||||
protocol: application/syndicate
|
||||
env: {
|
||||
BUILD_HASH: $sum
|
||||
}
|
||||
}>
|
||||
]
|
||||
|
||||
? <service-object <daemon simplex_history_actor> ?cap> [
|
||||
$cap {
|
||||
dataspace: $history
|
||||
database: "/home/emery/.simplex/simplex_v1_chat.db"
|
||||
}
|
||||
]
|
||||
]
|
|
@ -0,0 +1,13 @@
|
|||
; <require-service <daemon squeak>>
|
||||
|
||||
<daemon squeak {
|
||||
argv: [ "/home/emery/.nix-profile/bin/squeak" "/home/emery/squeak/Squeak6.0alpha-21540-64bit.image" ]
|
||||
dir: "/home/emery/squeak"
|
||||
protocol: application/syndicate
|
||||
}>
|
||||
|
||||
? <service-object <daemon squeak> ?cap> [
|
||||
$cap {
|
||||
config: $config
|
||||
}
|
||||
]
|
|
@ -0,0 +1 @@
|
|||
../../xdg_open_ng/uri_runner.pr
|
|
@ -0,0 +1,5 @@
|
|||
<require-service <daemon waybar>>
|
||||
<daemon waybar {
|
||||
argv: "/run/current-system/sw/bin/waybar"
|
||||
protocol: none
|
||||
}>
|
|
@ -0,0 +1,20 @@
|
|||
<require-service <daemon yggdrasilctl>>
|
||||
|
||||
let ?ds = dataspace
|
||||
$ds [
|
||||
?? <recv-json ?js> [ $log ! <log "-" { yggdrasilctl: $js }> ]
|
||||
]
|
||||
|
||||
? <built json_socket_translator ?path ?sum> [
|
||||
<daemon yggdrasil_actor {
|
||||
argv: [$path]
|
||||
protocol: application/syndicate
|
||||
}>
|
||||
]
|
||||
|
||||
? <service-object <daemon yggdrasilctl> ?cap> [
|
||||
$cap {
|
||||
dataspace: $ds
|
||||
socket: "/run/yggdrasil/yggdrasil.sock"
|
||||
}
|
||||
]
|
|
@ -0,0 +1,2 @@
|
|||
let ?ds = dataspace
|
||||
<chat-history $ds>
|
|
@ -0,0 +1,17 @@
|
|||
let ?exec-space = dataspace
|
||||
<exec-space $exec-space>
|
||||
|
||||
; execute programs in response to handlers
|
||||
$exec-space ?? <exec ?argv> $config [
|
||||
let ?id = timestamp
|
||||
let ?facet = facet
|
||||
let ?d = <uri_runner-exec $id $argv>
|
||||
<run-service <daemon $d>>
|
||||
<daemon $d {
|
||||
argv: $argv,
|
||||
readyOnStart: #f,
|
||||
restart: =never,
|
||||
}>
|
||||
? <service-state <daemon $d> complete> [$facet ! stop]
|
||||
? <service-state <daemon $d> failed> [$facet ! stop]
|
||||
]
|
|
@ -0,0 +1,2 @@
|
|||
let ?machine = dataspace
|
||||
<machine-dataspace $machine>
|
|
@ -0,0 +1,4 @@
|
|||
; dataspace is created in ../daemons/mpv.config-example.pr
|
||||
? <mpv ?mpv> $mpv [
|
||||
! <play-file "/srv/music/Various Artists - Windows 95/01 The Microsoft Sound.mp3">
|
||||
]
|
|
@ -0,0 +1,6 @@
|
|||
let ?nixspace = dataspace
|
||||
<nixspace $nixspace>
|
||||
|
||||
$nixspace ? <nix-build "icmlf#ncdc" ?output> [
|
||||
$log ! <log "-" { ncdc: $output }>
|
||||
]
|
|
@ -0,0 +1,2 @@
|
|||
let ?ds = dataspace
|
||||
<notifications $ds>
|
|
@ -0,0 +1,2 @@
|
|||
let ?typespace = dataspace
|
||||
<typespace $typespace>
|
|
@ -0,0 +1,9 @@
|
|||
let ?socketspace = dataspace
|
||||
<require-service <relay-listener <unix "/run/user/1000/dataspace"> $gatekeeper>>
|
||||
<require-service <relay-listener <tcp "0.0.0.0" 666> $gatekeeper>>
|
||||
|
||||
<bind <ref { oid: "syndicate" key: #x"" }> $socketspace #f>
|
||||
|
||||
<socketspace $socketspace>
|
||||
|
||||
; $socketspace <foo "bar">
|
|
@ -0,0 +1 @@
|
|||
../xdg_open_ng/handlers-example.pr
|
|
@ -1 +0,0 @@
|
|||
../syndicate_utils/mpv.config-example.pr
|
|
@ -0,0 +1,11 @@
|
|||
? <notifications ?notifyspace> [
|
||||
? <built _ ?path _> [
|
||||
$notifyspace ! <notify $path {} >
|
||||
]
|
||||
|
||||
? <nixspace ?nixspace> [
|
||||
$nixspace ? <nix-build _ ?output> [
|
||||
$notifyspace ! <notify $output {} >
|
||||
]
|
||||
]
|
||||
]
|
Loading…
Reference in New Issue