fatal dep error
This commit is contained in:
parent
14645980af
commit
f06425f7ff
|
|
@ -5,6 +5,7 @@ import { watch } from "fs"
|
|||
import { apps } from "./webapp"
|
||||
import { expectDir } from "./utils"
|
||||
import { NOSE_WWW } from "./config"
|
||||
import { expectShellCmd } from "./utils"
|
||||
|
||||
export const dnsEntries: Record<string, any> = {}
|
||||
|
||||
|
|
@ -17,6 +18,8 @@ let dnsInit = false
|
|||
|
||||
export async function initDNS() {
|
||||
if (process.env.NODE_ENV !== "production") return
|
||||
if (!await expectShellCmd("avahi-publish")) return
|
||||
|
||||
dnsInit = true
|
||||
|
||||
startWatcher()
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
////
|
||||
// Shell utilities and helper functions.
|
||||
|
||||
import { $ } from "bun"
|
||||
import { statSync } from "fs"
|
||||
import { setFatal } from "./fatal"
|
||||
import { stat } from "fs/promises"
|
||||
|
|
@ -16,7 +17,7 @@ export function untilde(path: string): string {
|
|||
return path.replace("~", `/${prefix}/${process.env.USER}`)
|
||||
}
|
||||
|
||||
// End the process with an instructive error if a directory doesn't exist.
|
||||
// Cause a fatal error if a directory doesn't exist.
|
||||
export function expectDir(path: string): boolean {
|
||||
if (!isDir(path)) {
|
||||
setFatal(`Missing critical directory: ${path}`)
|
||||
|
|
@ -26,6 +27,18 @@ export function expectDir(path: string): boolean {
|
|||
return true
|
||||
}
|
||||
|
||||
// Cause a fatal error if a system binary doesn't exist.
|
||||
export async function expectShellCmd(cmd: string): Promise<boolean> {
|
||||
try {
|
||||
await $`which ${cmd}`
|
||||
console.log("WHICH", cmd)
|
||||
return true
|
||||
} catch {
|
||||
setFatal(`Missing critical dependency: avahi-publish`)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
// Is the given `path` a file?
|
||||
export function isFile(path: string): boolean {
|
||||
try {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user