diff options
author | Minteck <contact@minteck.org> | 2022-02-12 19:49:42 +0100 |
---|---|---|
committer | Minteck <contact@minteck.org> | 2022-02-12 19:49:42 +0100 |
commit | 5c62e5a5c5f61b43b7788528872996772e39e10e (patch) | |
tree | 0b72c77b2605154e069432fadce187a5d738d3a0 /commands/remove.js | |
parent | d3796f6d61f0e3a6481a0974c7d6f4c83af2f860 (diff) | |
download | twilight-5c62e5a5c5f61b43b7788528872996772e39e10e.tar.gz twilight-5c62e5a5c5f61b43b7788528872996772e39e10e.tar.bz2 twilight-5c62e5a5c5f61b43b7788528872996772e39e10e.zip |
Update
Diffstat (limited to 'commands/remove.js')
-rw-r--r-- | commands/remove.js | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/commands/remove.js b/commands/remove.js index 081d87d..899aaa6 100644 --- a/commands/remove.js +++ b/commands/remove.js @@ -22,6 +22,10 @@ module.exports = async (argv, reinstalling) => { name = JSON.parse(fs.readFileSync(home + "/repository/" + dir + "/" + argv.package + ".json").toString()).name; } + if (argv.package === "twilight") { + die(c.red("error: ") + "package 'twilight' is system package and cannot be uninstalled, use 'twilight-setup' instead"); + } + instInfo = installed.filter(i => i.id === argv.package)[0]; console.log(" Uninstalling '" + name + "'...") @@ -58,11 +62,14 @@ module.exports = async (argv, reinstalling) => { delete installed[installed.map(i => i.id).indexOf(argv.package)]; fs.writeFileSync(os.homedir() + "/.twilight/installed.json", JSON.stringify(installed)); - if (os.platform() === "win32") { - if (fs.existsSync(os.homedir() + "/.twilight/binaries/" + argv.package + ".bat")) fs.unlinkSync(os.homedir() + "/.twilight/binaries/" + argv.package + ".bat"); - } else { - if (fs.existsSync(os.homedir() + "/.twilight/binaries/" + argv.package + ".sh")) fs.unlinkSync(os.homedir() + "/.twilight/binaries/" + argv.package + ".sh"); + let exec = argv.package; + if (!packages.includes(argv.package)) { + exec = argv.package; + } else if (typeof JSON.parse(fs.readFileSync(home + "/repository/" + dir + "/" + argv.package + ".json").toString()).execname === "string") { + exec = JSON.parse(fs.readFileSync(home + "/repository/" + dir + "/" + argv.package + ".json").toString()).execname; } + if (fs.existsSync(os.homedir() + "/.twilight/binaries/" + exec + ".bat")) fs.unlinkSync(os.homedir() + "/.twilight/binaries/" + exec + ".bat"); + if (fs.existsSync(os.homedir() + "/.twilight/binaries/" + exec + ".sh")) fs.unlinkSync(os.homedir() + "/.twilight/binaries/" + exec + ".sh"); spinner.succeed("Removing package... done"); |