From 77d1ff202426d7aafb1c5b802f8ea82c4644d413 Mon Sep 17 00:00:00 2001 From: kakashi Date: Fri, 1 Mar 2024 02:35:52 +0530 Subject: [PATCH] implemented install script --- deno.json | 2 +- install | 6 ------ scripts/install.ts | 23 +++++++++++++++++++++++ 3 files changed, 24 insertions(+), 7 deletions(-) delete mode 100755 install diff --git a/deno.json b/deno.json index 407e6e9..427c0ca 100644 --- a/deno.json +++ b/deno.json @@ -1,6 +1,6 @@ { "tasks": { "generate": "./scripts/generate ./colors/vscode.yml > ./colors/vscode", - "install": "deno run --allow-write=~/.config/nvim scripts/install.ts" + "install": "deno run --allow-env=HOME --allow-run=git,rm --allow-write=$HOME/.config/nvim scripts/install.ts" } } \ No newline at end of file diff --git a/install b/install deleted file mode 100755 index 37b81ed..0000000 --- a/install +++ /dev/null @@ -1,6 +0,0 @@ -#!/usr/bin/sh - - -git commit -am ".." -rm -rf ~/.config/nvim -git clone $(dirname $0) ~/.config/nvim diff --git a/scripts/install.ts b/scripts/install.ts index e69de29..befd357 100644 --- a/scripts/install.ts +++ b/scripts/install.ts @@ -0,0 +1,23 @@ + + +const SRC=new URL("../",import.meta.url).pathname; +const DEST=`${Deno.env.get("HOME")}/.config/nvim`; + +async function main() { + await run(`rm -rf ${DEST}`); + await run(`git clone ${SRC} ${DEST}`); +} + +async function run(cmd: string) { + // deno-lint-ignore no-deprecated-deno-api + const process=Deno.run({ + cmd: cmd.split(" "), + stdout: "piped" + }); + console.log(process.stdout); + + return (await process.status()).code; +} + + +if(import.meta.main) await main();