CLI and config file support
This commit is contained in:
29
bin/scripts/make-executable.js
Executable file
29
bin/scripts/make-executable.js
Executable file
@@ -0,0 +1,29 @@
|
||||
/**
|
||||
* Cross-platform script to make a file executable
|
||||
*/
|
||||
import { promises as fs } from "fs";
|
||||
import { platform } from "os";
|
||||
import { execSync } from "child_process";
|
||||
import path from "path";
|
||||
|
||||
const TARGET_FILE = path.resolve("build/index.js");
|
||||
|
||||
async function makeExecutable() {
|
||||
try {
|
||||
// On Unix-like systems (Linux, macOS), use chmod
|
||||
if (platform() !== "win32") {
|
||||
execSync(`chmod +x "${TARGET_FILE}"`);
|
||||
console.log("Made file executable with chmod");
|
||||
} else {
|
||||
// On Windows, no need to make files "executable" in the Unix sense
|
||||
// Just ensure the file exists
|
||||
await fs.access(TARGET_FILE);
|
||||
console.log("File exists and is accessible on Windows");
|
||||
}
|
||||
} catch (error) {
|
||||
console.error("Error making file executable:", error);
|
||||
process.exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
makeExecutable();
|
||||
Reference in New Issue
Block a user