Open-source alternative of Discord desktop's app.asar
Go to file
Ducko 41fe1b45ec [SecurityUtils] Self rewrite, also with safer patch plus using non-deprecated API 2021-12-11 22:50:26 +00:00
.github/workflows [CI] Don't mark as pre-release so GitHub recommends 2021-12-11 20:10:49 +00:00
polyfills [Polyfills > mkdirp] Convert to new polyfill system instead of in utils 2021-12-11 11:08:35 +00:00
src [SecurityUtils] Self rewrite, also with safer patch plus using non-deprecated API 2021-12-11 22:50:26 +00:00
.gitignore [Gitignore] More specific package-lock.json ignore 2021-12-10 19:54:50 +00:00
LICENSE Initial commit 2021-12-09 11:14:14 +00:00
README.md [SecurityUtils] Self rewrite, also with safer patch plus using non-deprecated API 2021-12-11 22:50:26 +00:00
changelog.md [Changelog] Tweak v0.3 2021-12-11 20:46:14 +00:00
injectPolyfills.js [Polyfills] Rewrite 2021-12-11 00:45:56 +00:00
roadmap.md [SecurityUtils] Self rewrite, also with safer patch plus using non-deprecated API 2021-12-11 22:50:26 +00:00
strip.js [CI] Strip via JS file, simpler yaml 2021-12-11 18:21:59 +00:00
test.sh [Polyfills] Rewrite 2021-12-11 00:45:56 +00:00

README.md

OpenAsar

An experimental open-source alternative of Discord desktop's app.asar.

Features

  • 🚀 Speed: ~2x faster startup times (up to ~4x with experimental config)
  • 🪶 Lightweight: <2% of Discord's original size (9mb -> ~150kb)
  • 🔌 Hotpluggable: Replace one file and it's installed, that's it
  • 🛡️ No Tracking: Removes Discord's built-in tracking for crashes and errors
  • 🪡 Patching: A future platform for custom patches to further enhance

Install Guide

OpenAsar is heavily disrecommened due to it being in early development.

  1. Download latest nightly release
  2. Backup your original app.asar (rename to app.asar.backup / etc)
  3. Install OpenAsar app.asar into the original path

If using Linux it is highly recommended to disable write protection (needing root to overwrite files) for your Discord install if you have it enabled. It is not much of a security defecit as Windows has no write protection as well. This enables updating the asar and potentially host updating further on.

Config

You can configure OpenAsar via settings.json (found in your Discord app data / user data), under a openasar object. Keep in mind most options are defaults for good reason. The avaliable options are:

  • quickstart (bool, default false) - whether to use Quickstart (experimental)
  • skipStartupUpdateChecks (bool, default false) - skips startup update checking (Linux-only)
  • autoupdate (bool, default true) - whether to autoupdate OpenAsar after Discord startup
  • multiInstance (bool, default false) - whether to enable multi-instance
  • ssoeAllowlist (bool, default true) - whether to use safer custom method of opening external urls (true) or normal Discord's method (false)

An example of a settings.json with OpenAsar config:

{
  "BACKGROUND_COLOR": "#202225",
  "IS_MAXIMIZED": false,
  "IS_MINIMIZED": false,
  "WINDOW_BOUNDS": {
    "x": 801,
    "y": 22,
    "width": 797,
    "height": 876
  },
  "MINIMIZE_TO_TRAY": false,
  "OPEN_ON_STARTUP": false,
  "openasar": {
    "quickstart": true
  }
}