QuickBox Pro v2.4.4

This version has been released on Monday, June 28, 2021.

This version is considered a maintenance and feature release. Oh what a release it is!

Continuing the forward momentum with rewriting the core commands and setting the stage for v3, this release contains a lot of Feature Requests as well as some essential patches to various application builds. To list out in ease the Feature Requests in this release, they are:

  • New Applications included:
    • FlareSolverr – FlareSolverr is a proxy server to bypass Cloudflare protection. FlareSolverr starts a proxy server and it waits for user requests in an idle state using few resources. When some request arrives, it uses puppeteer with the stealth plugin to create a headless browser (Chrome). It opens the URL with user parameters and waits until the Cloudflare challenge is solved (or timeout). The HTML code and the cookies are sent back to the user, and those cookies can be used to bypass Cloudflare using other HTTP clients. To learn more about FlareSolverr, check our their GitHub Repository at https://github.com/FlareSolverr/FlareSolverr.
    • Unpackerr – Unpackerr is an application that runs as a daemon on your download host. It checks for completed downloads and extracts them so LidarrRadarrReadarrSonarr may import them. To learn more about Unpackerr, check our their GitHub Repository at https://github.com/davidnewhall/unpackerr
  • New Dashboard UI/CLI features included:
    • Application links listed on the Main Application Navigation Menu as well as links to applications as seen on the Application Dashboard can now be customized/overridden!
      • This feature allows you to edit the links in the event you set customized reverse locations within nginx, unlike the custom menu file that allows you to simply create links to applications not supported by QuickBox Pro currently, or external links. This file is located at /srv/quickbox/custom/url.override.php.
    • stateSave has now been activated on Dashboard data tables located in the Application Management and Application Service tabs.
      • You can now set to view any amount of data on the service control or package management data tables on the application dashboard and the values will be honored for the session life. This is useful for those that have more than 15 applications installed (default view amount on the Application Management Tables) and would like to set the view to say 25 and have it stick without having to set it back after every page refresh. Please note however that on logout, the session will destroy this view setting as this value is saved to the browser and not a database which would ultimately require more resources.
    • Download Client Counter Panel now shows the amount of nzb in clients NZBGet and SABnzbd.
      • It was a heavily requested feature and is finally included! The counter panel will now show the amount of torrents located in the traditional download clients Deluge, QBittorrent, RTorrent, and Transmission as well as NZBGet and SABnzbd. Currently the count for NZBGet is pulled from /home/USERNAME/nzbget/downloads/completed/ and SABnzbd is pulled from /home/USERNAME/.sabnzbd/Downloads/complete/. In the future I will be including options to override these locations, for Torrent Clients as well as NZB Clients.

In addition to these new additions there are a number of enhancements and fixes bundled in. Many of these are simply keeping up with the recent developments of the Applications themselves, however, some are to improve the overall functionality of the applications and QuickBox environment. These range from rewriting the packages to comply with the upcoming v3 code standards to setting better locations to adhere with a more suitable file hierarchy to avoid conflicts and to keep directories tidy. Mylar3 and LazyLibrarian are both examples of the latter. To the former would be SABnzbd with an example of an improvement on the build. The entire package has been revamped and now versioning is dynamic. This means that you can now run qb update sabnzbd USERNAME and SABnzbd will update to the latest version available on their release list. Whereas before the versioning was hardcoded and updated within the build package, meaning that you would have to wait until it was sent upstream for a qb fix version, or simply wait until the next QuickBox Pro release to be updated.

Jackett has had some love put into it’s build and update packages as well. There has been an ongoing issue where updating within Jackett would produce a failed update and as such the UI would fail to load. This was due to the service file not utilizing the proper Jackett script for service. You can run qb update jackett USERNAME to grab the updated package and to have your Jackett service file patched up, then you can enable automatic updates in Jackett.. the rest is just automated.

Radarr has had values on the build updated to address issues where we were grabbing the nightly v4 packages. It is of best practical use to be installed using the master branch of their releases for initial stability, then it is simply a matter of user preference for trying develop or nightly release channels as these are to be used/set at your own risk! Of course, should you choose to update to nightly and things go sideways, you can always do a qb update radarr 3 USERNAME to set it back to their stable release channel and grab the needed update files to address things.


Of course there is more!

As with every release there is more, so check the changelog below for additional details and remember to keep an eye out as there may be more added before release and most importantly…

stay human! 💓

NEW:

APPS (new)
  • [feature-request] FlareSolverr
  • [feature-request] Unpackerr
GENERAL & UI (new)
  • disk mount is now a select field from avilable system mounts on the General Settings page
  • php timezone is now a searchable select field on the General Settings page
  • [feature-request] Customize your application links with url.override
    • This file is located at /srv/quickbox/custom/url.override.php. Editing links within this menu file will override the default links set on the build of applications installed.
  • [feature-request] UI: Initialize stateSave on service management and package management tables
    • You can now set to view any amount of data on the service control or package management data tables on the application dashboard and the values will be honored for the session life.
  • [feature-request] UI: Show nzb loaded count on Dashboard for NZBGet and SABnzbd
    • Keep in mind this only shows current active nzb that are not deleted.

ENHANCEMENTS:

APPS (enh)
  • Headphones: rewrite package file and simplify used functions on build
  • Jackett: added stop to service on qb update jackett USERNAME
  • LazyLibrarian: build according to FHS and stage qb update lazylibrarian username function.
    • LazyLibrarian is now installed and updated to /opt/USERNAME/LazyLibrarian
    • Existing install can comply with the new standards by running our complimentary updater with qb update lazylibrarian USERNAME. This will keep your current configurations in place but will move LazyLibrarian from the /home directory and into the /opt/USERNAME directory under the users assigned.
  • Mylar3: added qb update mylar3 USERNAME option
    • This will update Mylar3 to adhere with FHS, meaning it is now installed in /opt/USERNAME. The update will remove the old home location installed; configs and database stay intact at /home/USERNAME/.config/Mylar3/.
  • SABnzbd: rewrite package file and simplify used functions on build
    • versioning is now dynamically pulled
  • SABnzbd: version bump to v3.3.1
  • Sonarr: rewrite package file and simplify used functions on build
GENERAL & UI (enh)
  • Added external link icon to all external links
  • Added mylar3 and qbittorrent to autocomplete (update options)
  • Anonymize refer on all external links
  • Complete refactor of database module for updates
    • This is a cleanup and rewrite on the code base for the database module used in qb update quickbox and qb fix version. Binary size reduction and faster more reliable updates posted to the quickbox database.
  • Refactor constants on update/fix version
  • UI/Settings: set contextual tooltips on various fields
  • [feature-request] Updated filter validation on Site Root setting field on General Settings
    • it is now only required to enter IPADDRESS or DOMAIN.COM as site root and filter validation will take care of the https:// and the ending /.
  • [security] updated cookie session and expiry parameters
    • set secure flag (receive the cookie over HTTPS) and http only (prevent JavaScript access to session cookie) on session cookies.

FIXES:

APPS (fix)
  • Emby: set additional permissions on the build
  • Jackett: utilize jackett_launcher.sh in systemd service file
    • This addresses the issue with auto-updates/updates within Jackett UI where Jackett would become inaccessible after updating.
  • LECert: acme.sh is using ZeroSSL as default CA now
    • ZeroSSL requires an email registered before the creation of certificates, so pull default email set upon database.
  • Mylar3: on update ensure that current port is staged to mylar config
  • Radarr: build/update with master branch (v3) as nightly posts v4 and connections to Ombi fail
    • On build v3 utilizes the master repo. This can be updated accordingly on existing installs of v3 by running qb update radarr 3 USERNAME. Users can opt to set their branch in the Radarr Settings if they wish to use development or nightly releases… and use the qb update to rollback to the stable release should it be needed.
  • RClone: update version grabbing on mergerfs during build/update
  • ruTorrent: post proper functions check for diskspace.php on qb update rutorrent
    • This removes the old values for mount checking and places the new values.
GENERAL & UI (fix)
  • Addressed a bug where saving on the General Settings page produced bad siteroot
    • Saving settings would produce a siteroot like https://https://somedomain.com//. As such a more intuitive error message is produced on the proper format to use.
  • Addressed url link from Dashboard to Duplicati so if logins within Duplicati are enabled access properly resolves (no 404)
  • UI: addressed step posting on plex, let's encrypt, and quota installers from Dashboard
    • Arguments are now processed by way of ajax to allow system output modal processing and display.
  • UI/User Creation: AutoDL-IRSSI: on creation of user ensure that required irssi scripts are set to home directory
  • UI/User Creation: enhanced registration/user creation flow
    • run user creation process in the background on creation/registration.
    • this achieves a couple of things:
      1. it improves the flow time on user creation from both the public (if enabled) registration as well as from the user admin.
      2. it allows services to be fully reloaded in the background on user creation without interrupting the registration flow, thus producing proper summary/completion messages on the frontend.
  • UI/Settings: set proper import values on the controller from database for timezone set