Code Monkey home page Code Monkey logo

bbdinstaller's Introduction

This repo has been archived and is no longer active. If you are looking to install BetterDiscord. Please use the new installers found here: https://github.com/BetterDiscord/Installer

BandagedBD Installer

This is the source for the Windows installer of BandagedBD, a mod for Discord. I decided to put this in a separate repo mainly because it didn't feel quite right to have it in with the actual application itself as the application is JavaScript injection onto an Electron.js platform, and this is an actual executable that only sets ups files for it.

Preview

ScreenShot

System Structure

The system starts through the FormMain object which then adds the necessary control to the form. The controls to be added implement the interface IPanel and are represented in the accomanying enumeration PanelTypes. These two in tandem determine how the navigation through the installer occurs.

PanelTypes

An enumeration representing all the available panels to have in the installer.

IPanel

The interface IPanel requires the following functions:

  1. void OnShow - Called when the control is added to the form
  2. void SetWindow(FormMain) - Called when the main form prepares the panels, allows panels to keep a reference to the window/form

The interface also requires the following gettable properties:

  1. string Title - The title of the panel to be shown in the form
  2. UserControl Control - Returns an implied cast of self (useful for passing to other function in the main form)
  3. PanelTypes PreviousPanel - Representation of the panel to go to when going "back"
  4. PanelTypes NextPanel - Representation of the panel to go to when going "forward"

FormMain

Creates and keeps a reference to all the IPanels and even handles the navigation through the application. Also holds the enumeration of PanelTypes. Includes a function to return a reference to a specific panel so panels may reference each other (mainly used for panels to refer to the configuration panel).

Discord

An enumeration representing the 3 release channels of Discord: Stable, Canary and PTB.

Utilities

Utilities contains several functions used multple times throughout the application including things like killing and launching processes as well as searching for and resolving paths. Contains the Discord enumeration.

Custom Components

The installer makes use of a few custom components either for modularity as in the DiscordLocator control or for the custom "flat" design as in WinForms not all controls have a decent flat style.

DiscordLocator

This is a custom group of controls consisting of: 3 checkboxes that represent location enable, 3 textboxes showing the currently entered/found path, and 3 buttons that allow the user to browse for the path.

Button

This is a simple wrap around the normal Button object to add some helpful functions.

FlatCheckBox

The native checkbox leaves a lot to be desired in terms of extensibility and customization. To create custom styling this component paints it's own checkbox using the current graphics and imposing the string "✔" overtop.

FlatProgressBar

Similar to the checkbox the native progressbar has little to no customization options. This paints a flat checkbox using the an offscreen image as adapted from this StackOverflow answer.

bbdinstaller's People

Contributors

zerebos avatar callumcarmicheal avatar

Stargazers

liledix4 avatar Hans Edison avatar Media Explorer avatar  avatar  avatar Caleb Rose avatar Vladimir Tarasov avatar Yarik avatar  avatar Lewis avatar  avatar Descendo The Monkei avatar  avatar  avatar  avatar Zefanya Sendri avatar  avatar 丿丨_丨丿 avatar  avatar Pedro Fialho Francisco avatar Linnen avatar Iqbal Rifai avatar Bobby avatar .xrg. avatar BoomeLancer avatar Jean Paul Luna Flores avatar Coolumin avatar  avatar Stillkill avatar MatIas Hernández avatar Fullmetal Alchemist avatar Md Shah Faishal Khan avatar Celia M avatar LE avatar  avatar Maciej Bromirski avatar NeonLightning avatar Lucas avatar Rizky Anugerah avatar  avatar  avatar Dimitris Bratanis avatar Andrey avatar  avatar Corey Russ avatar jade arson. avatar 0zul avatar Alvian D.Q. avatar 501r0 avatar Hance avatar Psychloor avatar Ghoul avatar Simon avatar Marc Rentschler avatar  avatar H.Maxwell avatar Ray avatar LUIZ ANTONIO VELOSO CEZARE avatar OVERIMAGINE avatar Aaron avatar Jack C avatar  avatar  avatar Twilight-Dream-Of-Magical avatar Rishil avatar  avatar Asyraaf avatar  avatar  avatar Schalk Burger avatar Alyssa avatar Trevor Corcoran avatar Martin avatar Filip avatar Xubiod avatar Evan  avatar Sxtanna avatar Maxime De Clercq avatar  avatar  avatar Matthijs Kropholler avatar IB_U_Z_Z_A_R_Dl avatar  avatar KJ avatar James Anderson avatar Dennis avatar Schrödinger avatar  avatar JDJG avatar  avatar  avatar Paul Haddon avatar  avatar  avatar  avatar Ulrich R Batanado avatar Nilay Baranwal avatar Terry Khoriyadi avatar Britt avatar Patrick Castro avatar

Watchers

Neustradamus avatar James Cloos avatar NeonLightning avatar  avatar  avatar mutukisa avatar BoomeLancer avatar Osderda avatar TheFlomax avatar  avatar  avatar

bbdinstaller's Issues

Unexpected Token

When i download BBD everything is working fine. But as soon as i restart my PC, It tells me that "An error has occured. Unexcpected Token config.json Appdata>Local>Discord>app-0.0.309>resources>app>betterdiscord" I really find that annoying. but when i reinstall BBD everything works fine but its the same problem again when i restart my pc

MOVED - Colored Text not working (Check on BD Repo: Issue #533)

EDIT: MOVED TO CORRECT LOCATION

Colored Text setting to color users messages to same color as their respective role does not work when enabled.


Plugins & Discord Info:

Stable 74008 (d6b7151)
BBD 0.3.5
Host 0.0.309
Injector 0.6.2
Windows 10 64-Bit (10.0.19042)
---
AccountDetailsPlus v0.1.10
BDFDB v1.2.6
BetterRoleColors v0.8.13
BetterTypingUsers v1.0.2
PluginRepo v2.1.1
ServerSearch v0.1.4
ThemeRepo v2.1.1
TypingIndicator v0.4.3
VoiceEvents v1.3.3
ZeresPluginLibrary v1.2.27

"ReferenceError: Cannot access 'fs' before initialization"

I had This on my imac and today it removed so i was gonna get it back and when i tried to install it this showed "ReferenceError: Cannot access 'fs' before initialization" how can I fix cus I want it for discord & when I remove it to download it back the same thing pops up & wont do anything
Screen Shot 2021-03-24 at 4 47 07 PM
Screen Shot 2021-03-24 at 4 47 11 PM

Copy and Paste closes discord due to BandagedBD installation

I opened discord, tried to copy and paste a link to a friend and it immediately closed, and this happened after discord had an update, I looked it up and recent reddit posts from 2-3 days ago from now had people having this issue, they were told its because they are breaking TOS and should uninstall any mods, I did so and the issue stopped immediately, I guess discord updated to get rid of any modifications, is there a fix to this? Would BandagedBD have to be updated?

PTB no longer working with BBD

I always use PTB (cuz I can) and today I see that it got a somewhat large update, and now I am unable to get it working again. I have tried reinstalling it several times but to no avail. I went back to Stable and everything works fine. I think soon whatever they did to PTB will move to Stable.

Предложени

Предлогаю сделать версию для пользователей смартфонов так как таких же приятных фонов не хвотает😘

Overlapped server icons in minimal mode.

Enabling minimal mode causes the server icons to be "behind" the channel list of the active server.

Tried fully reinstalling Discord and BBD. I'm on the newest version for both Discord (Stable 64675 (92c9fdf)) and BBD (BBD 0.3.5/ Installer version 1.0.5) No custom themes or CSS is in use.

grafik

(bug)BBD crashes upon pasting

when i paste anything in the text input box(link, text, etc.) bandagedbd instantly crashes(CTRL +V or normal paste, doesnt matter, same with any other hotkey, like DEL + LMB while using Quick Delete Messages v1.4.2, and many many many more)
i have these plugins:
AccountDetailsPlus v0.1.10
BDFDB v1.4.3
BetterFormattingRedux v2.3.10
CharCounter v1.5.0
CompleteTimestamps v1.5.2
CopyRawMessage v1.1.2
CreationDate v1.4.0
Direct-Download v0.4.2
Edit Uploads v0.0.9
EmojiUtilities v0.0.9
Game Activity Toggle v1.2.6
ImageToClipboard v0.3.5
MessageLoggerV2 v1.7.68
MobileForAll v1.0.1
PermissionsViewer v0.1.16
Quick Delete Messages v1.4.2
ServerCounter v1.0.3
ServerDetails v1.0.4
ShowHiddenChannels v2.9.3
TypingIndicator v0.5.1
VoiceUsersCounter v2.0.0
XenoLib v1.3.35
ZeresPluginLibrary v1.2.28
and these themes(not sure if this matters but):
MinimalCord v2.0.0
ServerColumns v1.0.6

Syntax Error

Discord spits out a Syntax error in the config.js file for no reason. this is preventing me from properly repairing bandagedbd

Handle download failures better (Windows)

Hi,

I've got a fairly restrictive firewall that requests permission before allowing new applications to make outbound requests to the internet.

It does this by controlling access to the network. As such, the first time an app attempts to connect, it will receive an "Access Denied" exception.

When this happens, the firewall pops up a prompt and I approve, meaning any further requests would succeed.

Most apps will re-try a download after a back off period, or off a manual "retry".

The BBD installer doesn't handle this scenario well;

Some things I've noticed;

• The download fails silently and isn't re-tried.
• Even the "detailed" view doesn't show the download failure, just the "Downloading to ..."
• If the download fails, the install seems to hang
• The "Exit" button gives no indication that the process succeeded/failed [after the install hung, I left it 5 minutes then clicked Exit. Wasn't sure if it had succeeded, so re-ran just in case. It hadn't]

While making multiple attempts to download would be ideal for me, I acknowledge it's a pretty rare edge-case.

That said, I think there's a strong argument for improving the error handling to cope with temporary DNS/network glitches. At the very least, show the error message and change the "Exit" button to read "Cancel"/similar [I'm assuming that if you haven't got as far as downloading, there's nothing to really roll back].

In any case, many thanks for all your efforts. Hope this helps.

Discord Update 2021-03-05 (stable) crashes multiline (already fixed)

The small update of Discord (stable branch) on Windows from 2021-03-05 (today) crashes the client, when BBD is installed and entered text switches to multiple lines (either via overly-long single lines or manual breaks with Shift+Enter).

Running the latest installer again to reinstall BBD fixes the issue.

BBD Installation Error

Using the latest

  • Injector (BBD v1.0.5 )
  • Discord App: Latest
  • PTB Discord: 1.0.1005
    Whist installing Bandage Better Discord it kills processes normally and restarts. When restarting Discord PTB takes on the Mobile Site of Discord.

image

Discord App: Bug seems to be fixed I guess? 3/23/2021

@rauenzi

Compatibility with Discord Portable is.. Jank

The Error on Launch of [discord-portable.exe] is:

[
Uncaught Exception:
Error: Cannot find module 'C:\Users\nopublic7\PortableApps\PortableApps\DiscordPortablebutBetter\app\app-0.0.301\resources\app.asar\package.json'
at Module._resolveFilename (module.js:470:15)
at Function.Module._resolveFilename (C:\Users\nopublic7\PortableApps\PortableApps\DiscordPortablebutBetter\app\app-0.0.301\resources\electron.asar\common\reset-search-paths.js:35:12)
at Function.Module._load (module.js:418:25)
at Module.require (module.js:498:17)
at require (internal/module.js:20:19)
at Object. (C:\Users\nopublic7\PortableApps\PortableApps\DiscordPortablebutBetter\app\app-0.0.301\resources\app\index.js:5:13)
at Object. (C:\Users\nopublic7\PortableApps\PortableApps\DiscordPortablebutBetter\app\app-0.0.301\resources\app\index.js:32:3)
at Module._compile (module.js:571:32)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:488:32)
]

using this distro: [https://github.com/portapps/discord-portable/] re: [https://portapps.github.io/app/discord-portable/]

For refrence the path to [package.json] is [PortableApps\DiscordPortablebutBetter\app\app-0.0.301\resources\app] not [\app.asar]

Attached text of the log: Lorgg.txt

Better Discord not starting with discord launch

Basically I have to repair and reinstall Better Discord every time when restarting my pc. Any way to fix this? Basically my discord auto launches when my pc starts, could this have to do with the problem? Thank you in advance

Uninstallation process not working.

I tried uninstalling, and its been a couple hours, but the progress bar hasn't moved at all. I have previously had trouble when trying to install it. I was successfully able to install it, but when I opened Discord, the Bandaged Discord Tab did not pop up, so I attempted to uninstall it, and this happened.
Capture

No longer working for me at all.

So today BD just went away happens every once in a while so I open BBD and install it and it just opens the web browser version of discord but in the client. I tried doing repair and on canary but it did the same thing each time. It would be much appreciated if you could help me.

[Bug] Install button will turn grey if you press back when installing.

Describe the Bug
The install button on the installer will turn grey if you select where you want to install and then go back. It saves the state of the check mark, but assumes that the installer is unable to install. It's not a big problem at all, but I thought I should let it be known as I found it within 30 seconds of installing the program.

To Reproduce
Open Installer, click agree. Select install. Now, choose the discord you want to install to. Press back, and then go back to install and you will see the install button will be greyed out and the discord you chose to install it to will still be checked.

Expected Behavior
You will be able to press install after hitting the back button, and reentering that part of the menu.

Screenshots
I think it's simple enough, I can provide some if needed.

Discord Version
Applies to the launcher, not discord version.

Additional Context
None.

Injector update loop

Using the latest installer, I get this message when Discord launches:

There is an update available for BandagedBD's Injector (1.0.0). You can either update and restart now, or later.

If I click the shiney button that applies the update, Discord restarts.... and prompts me again. To be quite honest I'm unsure if this is a legitimate issue or an April 1st thing.

Installer does not respect the "Restart All Discord Instances" option.

When using either the Install or Repair options in the installer, installer will kill Discord processes regardless of whether or not "Restart All Discord Instances" is checked. Discord instances should not be killed if this option is unchecked, or the option should be removed.

Plugins on Stable died

Issue in title, plugins died on discord stable, BBD wont start any plugin, but in 'plugins' menu it seems enabled. 'settings' for any plugin wont open. BBD wont see BBFDB plugin when its installed.

Stream/Screen Share Doesn't Load When Clicking "Pop-Out".

I joined the BetterDiscord server first, and several other users are reporting the same issue;

When clicking "Watch Stream" the stream works fine when embedded directly in the main Discord client window, however, if you click the small "pop-out" button to separate the stream into a separate window, the stream audio continues to play, but the video sticks on the Discord loading animation loop. Making the feature unusable.

Install halts

Version 1.0.4

Starting installation for Discord
Killing Discord Processes
Downloading BandagedBD package
Using channel: https://github.com/rauenzi/BetterDiscordApp/archive/injector.zip
Downloading to: <redacted>\Discord\\resources\BetterDiscord.zip
Finished downloading BandagedBD package
Deleting old BetterDiscord
Extracting BandagedBD package
Renaming package dir
Deleting temp file <redacted>\Discord\\resources\BetterDiscord.zip
Verifying installation
Checking for old style injection
Verifying <redacted>\Discord\\resources\app\index.js
Verifying <redacted>\Discord\\resources\app\config.json
Verifying <redacted>\Discord\\resources\app\package.json
Verifying <redacted>\Discord\\resources\app\betterdiscord\index.js
Verifying <redacted>\Discord\\resources\app\betterdiscord\config.json
<redacted>\Discord\\resources\app\betterdiscord\utils.js does not exist! Verification failed!

I was triggered to reinstall BD after it ceased loading (injecting) after latest client app update. At the verification failure point, the installer stopped with the progress bar approx 75%. However, can still run app fine and everything including today's updated ZeresPluginLibrary/XenoLib files and existing plugins load and work, so it's not breaking, but something looks off during the install.

Just thought i'd let you know.

Discord canary with BBD thinks I'm using a browser

when bbd stopped working with ptb, i uninstalled the ptb version and installed the canary one, but whenever betterdiscord starts with it, discord thinks im using a browser. because of that i cant do some things like streaming. and the betterdiscord settings dont even show up in discord settings

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.