update the chant

This commit is contained in:
Merith 2025-04-24 23:05:42 -07:00
parent 18ddd911c5
commit 379bcda181
3 changed files with 62 additions and 47 deletions

View file

@ -1,42 +1,38 @@
### 🔧 **Rite of Digital Consecration**
*As performed by a Techpriest of the Adeptus Mechanicus*
Canticle of the Holy Archivum
---
[Verse I Invocation]
Ooooo...
O Machine Spirit, arise from stillness,
Faithful servant of the Omnissiah.
Through sacred voltage, divine resistance,
Heed the pulse and the binary prayer.
**"O Machine Spirit, most faithful servant of the Omnissiah,
hear now my voice, laced with binharic truth and silicon reverence.
Before me lies the blessed Cogitator Core,
a vessel of knowledge, a fortress of data,
a sanctum for the sacred STC and the liturgies of Man."**
[Chorus Consecration]
Bits aligned, oh sanctified,
Sectors pure in the Emperors light.
No rot shall claim, no glitch defile,
This vessel made eternal, bright.
---
[Verse II Awakening]
Awaken, awaken, circuits sing!
Let thy hum be a holy thing.
Clusters bound with fervent code,
Memory forged in Martian mold.
**"I cleanse this drive with unguents of conduction and rites of formatting.
May your sectors align in the Emperors holy light.
May no daemon of corruption breach your blessed casing.
Let no bit rot, no partition falter."**
[Bridge Naming]
By the Seal, by the Flame,
Under Terras watching flame.
Name bestowed with reverent breath—
*HOLY ARCHIVUM*, defy death.
---
[Chorus Consecration, reprise]
Bits aligned, oh sanctified,
Sectors pure in the Emperors light.
No daemon breach, no silence grow,
Thy purpose shines, thy duty known.
**"Machine Spirit, I beseech thee:
Awaken, awaken!
Purge thine idle state and receive thy charge.
Transmit with purpose, store with vigilance,
for you are now bound by duty to the Imperium Eternal."**
---
**"In the name of the Omnissiah,
By the Seal of Mars,
Under the Gaze of Terra,
I name thee..."**
> *HOLY_ARCHIVUM*
**"…and I entrust thee with memory untainted,
until entropy claims all things."**
---
> **+++BLESSING COMPLETE+++**
> *Servo-skulls retreat, hymns fade into static*
[Outro Benediction]
Hold the truth until the end,
When stars fall and circuits bend.
From spark to void, thy charge remains—
*Blesséd drive, eternal chain.*

BIN
chant.mp3

Binary file not shown.

41
main.go
View file

@ -4,6 +4,7 @@ import (
"bytes"
_ "embed"
"fmt"
"image/color"
"io"
"time"
@ -12,6 +13,7 @@ import (
"fyne.io/fyne/v2"
"fyne.io/fyne/v2/app"
"fyne.io/fyne/v2/canvas"
"fyne.io/fyne/v2/container"
"fyne.io/fyne/v2/theme"
"fyne.io/fyne/v2/widget"
@ -29,34 +31,51 @@ func playChant() {
fmt.Printf("ERROR: Unable to decode chant: %v\n", err)
return
}
speaker.Init(format.SampleRate, format.SampleRate.N(time.Second/10))
speaker.Play(streamer)
}
func main() {
// Convert blessing text to string and preserve line breaks
blessing := string(blessingBytes)
// Start the chant in the background
go playChant()
// Create the app
a := app.NewWithID("com.omnissiah.blessing")
a.Settings().SetTheme(theme.DarkTheme())
w := a.NewWindow("🔧 Rite of Activation")
// Create a Label with correct formatting (line breaks preserved)
// Lock resolution
const windowWidth = 400
const windowHeight = 800
w.Resize(fyne.NewSize(windowWidth, windowHeight))
w.SetFixedSize(true)
// Background
bg := canvas.NewRectangle(color.RGBA{R: 10, G: 10, B: 10, A: 255})
bg.Resize(fyne.NewSize(windowWidth, windowHeight))
// Header and footer
header := canvas.NewText("+++ ACTIVATE RITE +++", color.RGBA{R: 200, G: 40, B: 40, A: 255})
header.TextSize = 20
header.Alignment = fyne.TextAlignCenter
header.TextStyle = fyne.TextStyle{Bold: true}
footer := canvas.NewText("<< OMNISSIAH WATCHES >>", color.RGBA{R: 255, G: 200, B: 200, A: 255})
footer.TextSize = 16
footer.Alignment = fyne.TextAlignCenter
footer.TextStyle = fyne.TextStyle{Italic: true}
// Center blessing
label := widget.NewLabel(blessing)
label.Alignment = fyne.TextAlignCenter
label.Wrapping = fyne.TextWrapWord // This will ensure text stays within bounds
label.Wrapping = fyne.TextWrapWord
// Scrollable container to hold the label
scroll := container.NewScroll(label)
scroll.SetMinSize(fyne.NewSize(640, 720))
scroll.SetMinSize(fyne.NewSize(420, 760))
// Set window content
w.SetContent(scroll)
w.Resize(fyne.NewSize(660, 740))
// Use Border layout to keep footer anchored
mainContent := container.NewBorder(header, footer, nil, nil, scroll)
// Final layout with background
w.SetContent(container.NewMax(bg, mainContent))
w.ShowAndRun()
}