mirror of
https://github.imc.re/void-land/hyprland-void-dots
synced 2025-10-05 19:05:02 +02:00
46 lines
1.1 KiB
JavaScript
46 lines
1.1 KiB
JavaScript
import GLib from "gi://GLib"
|
|
|
|
const main = "/tmp/asztal/main.js"
|
|
const entry = `${App.configDir}/main.ts`
|
|
const bundler = GLib.getenv("AGS_BUNDLER") || "bun"
|
|
|
|
const v = {
|
|
ags: pkg.version?.split(".").map(Number) || [],
|
|
expect: [1, 8, 1],
|
|
}
|
|
|
|
try {
|
|
switch (bundler) {
|
|
case "bun": await Utils.execAsync([
|
|
"bun", "build", entry,
|
|
"--outfile", main,
|
|
"--external", "resource://*",
|
|
"--external", "gi://*",
|
|
"--external", "file://*",
|
|
]); break
|
|
|
|
case "esbuild": await Utils.execAsync([
|
|
"esbuild", "--bundle", entry,
|
|
"--format=esm",
|
|
`--outfile=${main}`,
|
|
"--external:resource://*",
|
|
"--external:gi://*",
|
|
"--external:file://*",
|
|
]); break
|
|
|
|
default:
|
|
throw `"${bundler}" is not a valid bundler`
|
|
}
|
|
|
|
if (v.ags[1] < v.expect[1] || v.ags[2] < v.expect[2]) {
|
|
print(`my config needs at least v${v.expect.join(".")}, yours is v${v.ags.join(".")}`)
|
|
App.quit()
|
|
}
|
|
|
|
await import(`file://${main}`)
|
|
} catch (error) {
|
|
console.error(error)
|
|
App.quit()
|
|
}
|
|
|
|
export { }
|