* Update config.yaml to support Linux Mint build target
Linux Mint is a Debian downstream, and it should be supported as such
* Update ChangeLog
---------
Co-authored-by: Nick Bolton <nick@symless.com>
* Swap assert for warning log lines
* Flush on IPC write
* Flush on cleanup instead of write
* Record core started setting
* Show server first start message
* Show message when active scope is read-only
* Show read only message on change
* Show read only on window show
* Try to improve main window size policy
* Revert addition of resizer
* Remove redundant file path fiddling
* Remove dead code and fixed missing const
* Print path and use queued connection
* Improve read-only message on Windows
* Only show toggle warning when dialog visible
* Update ChangeLog
* Fixed include
* Add reset settings menu action and env var
* Delete profile and config dirs, reduce duplication with TLS dir and various other paths, fixed bug in new client dialog, move TLS arg to server
* Better filename
* Make method const
* Update ChangeLog
* Remove include
* Make param const
* Stop core process on reset
* Fixed: reset menu action causes config to be pulled from app/server config
* Center main window in middle of screen
* Update fingerprint on load
* Update TLS controls enabled
* Use official Qt way to detect dark mode and clean up dead code
* Add missing includes
* Simplify dark mode code
* Check app config dir for .env
* Use app config dir for .env
* Don't check for existence of file
* Resolve orgDir
* Add missing example env
* Fixed example
* Update ChangeLog
* Improve trusted fingerprint message
* Fixed typo
* Improve grammar
* Simplify logging output
* Only show close reminder if not quitting
* Migrate old settings on macOS
* Raise main window when showing
* Raise critical error above main window
* Coverage for config scopes
* Fixed new client prompt
* Remove unused includes
* Further coverage for config scopes
* Update ChangeLog
* Load .env from app dir
* Use `OutputDebugStringA` on Windows
* Improved string manipulation in logger and better use of OutputDebugStringA
* Use noquote for path
* Apply TLS setting after activation
* Restart after activation
* Move skip debug message to correct place
* Only print settings path on create, not shown
* Merge common and global libs
* Reduce code duplication around constants, version, etc
* Simplify sprintf code
* Use snprintf
* Add error test menu
* Coverage for dotenv
* Coverage for Logger
* Add missing include
* Add init when no Git SHA
* Update ChangeLog
* Add spellings
* Set debugging on for release build
* Remove unused variable
* Remove bad comment
* Fixed copyright date
* Remove import
* Move URL const back to GUI
* Remove dead code and duplication
* Fixed/ignored lint warnings
* Rename controls and improve setting enable logic
* Move settings dialog to new lib
* Rename dialog to dialogs
* Include .ui files for GUI lib and include autogen headers in exe
* Unit test settings dialog
* Fix lint errors
* Update ChangeLog
* Fixed test name
* Add debug messages
* Tweak message
* Logging for CI issue
* Revert "Logging for CI issue"
This reverts commit 124b2c1acd778f1e422057e203436582fe12d147.
* Revert "Add debug messages"
This reverts commit 39b6a06c716965e0a8199bf34b6652861874cb28.
* Add Windows compiler error
* Exclude test on Windows
* Fixed menus
* Parse string to long for date
* Change time limited logic
* Restore time limit logic
* Remove qglobal.h includes
* Remove warning
* Fixed tests to work with 0 value
* Update ChangeLog
* Move screen config files to new GUI lib
* Fixed bugs in config dialog related to service checkbox
* Test status tip
* Revert "Test status tip"
This reverts commit d11ad5bc22dab7edcf7ef0b3baada2fce240398a.
* Explain why service disabled
* Corrected client error message (written by non-native English writer) to make the message easier to understand for native English speakers
* Clearer logic
* Improve readability
* Coverage for 'add client' and client error messages
* Coverage for `Screen` class
* Clarify test names
* Use `const QString &` for backward compatibility
* Fixed lint warnings
* Prevent return paths after qFatal
* Use auto and abort to solve lint warnings
* Remove unused fake error
* Make operator hidden friend
* Remove redundant access specifier
* Convert int explicitly
* Swap && logic for linter
* Update ChangeLog
* Also ignore `command_pre` for Fedora itself
* Improve warning message
* Fixed layout issues on main window
* Restore fusion theme for Windows dark mode
* Further correct main window layout
* Set CWD for launch on Windows to same dir as .env
* Use signals for tray icon instead of callback
* Reduce complexity for setting tray icon
* Further reduce tray icon complexity
* Reduce tray retry time
* Fixed tray not showing on macOS
* Refactor function names
* Move tray icon to lib
* Decouple server connection class
* Move server connection to lib
* Move client config to lib
* Remove redundant forward declarations
* Fixed some namespaces in the new lib
* Move core process code to new class
* Improve member names on new process class
* Remove copy/pasta code
* Move OSX helpers to lib
* Add .mm to lib config
* Fixed copyright
* Improve reliability of log line handling
* Fixed TLS certificate generate bugs
* Remove client list
* Refactor core process handling to fix various problems
* Fixed process/connection status bugs
* Fixed function signature issue on macOS
* Fixed override warnings
* Fixed string format warning
* Save `wasStarted` state and use that instead
* Use only filename in dialog
* Use lambda for simple slot
* Scroll to bottom if at bottome
* Set value based on position before text added and set horizontal scroll too
* Add 1px tollerance for Linux
* Simplify start/stop mutex
* Always stop service on restart
* Increase scroll bottom threshold to 2
* Log warning instead of critical
* Fixed long-standing dir CD-up hack
* Remove include
* Remove include
* Fixed rogue dumbisense includes
* Account for optional distro_like
* Add QAction include to solve incomplete type
* Remove rogue #pragma
* Static cast log value
* Solve event queue delete warning
* Fixed integ test on Windows 10
* Reduce enum verbosity
* Use static instance instead of global
* Make function const
* Use unique_ptr instead of new and delete, and made some functions const
* Fixed smart pointer use
* Fixed variable shadowing
* Fixed wrong use of using
* Fixed missing namespace using
* Simplify TLS error handling
* Improve UX around certificate errors and success
* Decouple app config from core process through interface
* First iteration of core process test
* Mark dtor as override
* Rename attach launch entry
* Add TODO
* Create proxy for process
* Move IPC client to deps
* Fixed warnings
* Reorganize new GUI lib dir structure
* Update includes to reflect new paths
* Reorg GUI tests
* Abstract IPC client
* Refactor about screen
* Fixed .ui warnings
* Remove redundant include
* Fixed typo
* Fixed typos and add spelling
* Fixed misleading function name
* Improve comment
* Improve code coverage for core process
* Remove noisy log line
* Make global const
* Use default dtor
* Use vector instead of new
* Make ctor explicit
* Make ctor explicit (2)
* Use enum class
* Fixed bad enum
* Stub out core tool
* Stub out dir operation
* Extract byte functions
* Add missing return path
* Simplify byte/int functions
* Fix truncation
* Use ctor member assignment
* Fixed segfault in process proxy
* Fixed print warning
* Make function const
* Cleanup header
* Fixed missing name
* Update ChangeLog
* Make more functions const
* Add RHEL image
* Use Fedora config for RHEL
* Use script to activate RHEL
* Mirror mount args
* Set RHEL username and password
* Pass RHEL build args
* Pass RHEL login by file
* Use RHEL 9 for newer Python
* Source RHEL login
* Add case for RHEL Python deps
* Add `--deactivate`
* Do PIP user install
* Upgrade PIP
* Add RHEL config
* Introduce 'command-pre'
* Inherit fedora deps for RHEL and only strip sudo on non-empty command
* Add RHEL 9 runner
* Use RHEL 9 codeready
* Add AlmaLinux EL9
* Add support for RHEL-like
* Add EPEL for Alma
* Enable power tools on Alma
* Fix missing semicolon
* Install EPEL before power tools
* Inherit Alma deps from RHEL
* Switch from `powertools` to `crb`
* Abandon RHEL for now (no Qt 6 support)
* Don't pass required when getting distro key
* Correct key name for Rocky Linux
* Add Repology badge
* Restore original `build-push-action`
* Exclude unsupported Repology entries
* Update ChangeLog
* WIP: Show dev thanks message
* Improve error messages and guard license code
* Print core command
* Allow license tests when licensing disabled by default
* Don't check invalid serial key
* Fixed typo
* Add error checking
* Use shared ptr instead of static deps
* Actually save and load the setting
* Add dev thanks vars to CI
* Show thanks message after connected
* Refactor hack-job of local/global save/load to remove coupling and use Qt events system
* Simplify config loading
* Overloads for optionals
* Fixed global config scope not loaded
* Save message state before showing to avoid multiple messages
* Update ChangeLog
* Fixed lint warnings
* Make function const
* Reduce verbosity
* Remove dead code, show version on start, tidy up lint warnings
* Make product name code safer
* Connect on enter press
* Only show server specific wording when on server
* Add emit commands
* Log info and error
* Remove deaad code
* Remove test member
* Disable start context menu action unless usable
* Show more relvant connect message
* Fixed close to tray not applied, and simplified restart core logic
* Remove redundant include
* Add QML and QtQuick deps
* Keep only Qt declarative
* Fixed delcarative package name
* Use `qt6-qtdeclarative` on OpenSUSE
* Fixed warnings
* Introduce tabs for settings and make some settings easier to understand
* Further reorganization of settings UI
* Revert config.yml
* Show Qt version in config
* Remove custom font
* Improve wording of elevate privs
* Fixed window sizes and default tabs
* Save main window size and position
* Fixed slot warning
* Fixed hacky use of validators
* Make activation cancel more intuitive
* Save window state in dtor and add try-catch to prevent exceptions propagating
* Fixed consistency of fatal messages
* Improve color conssitency and add tooltip
* Clean up styles and weird layout
* Move config files to new gui lib
* Core interface integ tests
* Rename `Config` to `ConfigScopes`
* Add 'Schoeneman' to cspell
* Fixed incorrect `Config` (should be `ConfigScopes`)
* Fixed typo
* Missed a spot
* Delete accidentally re-added file
* Fixed formatting
* Add short opt
* Coverage for `AppConfig`
* Update ChangeLog
* Remove redundant includes
* Fixed date
* Remove rogue include
* Move integ test to corredt place and re-enable tests
* Depend on `poll.h` (removes support for non-POSIX systems)
* Only build tests for each arch
* Move back to unit tests (poll is mocked)
* Better error message for valgrind not found
* Simplify dependency injection for BSD sockets poll test
* Improve test readability for BSD net poll
* Split out 2-in-1 test for `isAnyAddr`
* Stub out sleep function
* Improve coverage for pollSocket
* Use gmock ON_CALL instead of manual mock
* Remove unused function signature
* Use conventional deps struct instead of std functional
* Add test for socket data FD set to -1
* Add assertation for adding unblock pipe
* Use older style array alloc
* Less precision around `getNetworkDataForThread` value
* Use `ssize_t` for `ignore`
* Remove unused var
* Update ChangeLog
* Assert `n > 0`
* Add `num > 0` to top assert
* Update ChangeLog
* Only run assert test in debug