- When running the
createtool, it will now show some info of what it did - Code cleanup
- Command usage has changed
- When removing a command, it now asks for confirmation
- Other overhauls
editarg: Allows you to edit your commands--versionarg: Displays the version of cmdcreate--supported_editorsarg: Displays current text editors- Flag and arg descriptions
- Bug fixes
- Other misc changes
- Added
code-insidersas a supported editor - Overhauled the intro
- Added
viandemacsas supported text editors - Added information about how updates work.
- Listing commands now only displays the command names
- Code has been cleaned up (at least a little bit)
--changelogflag: Displays cmdcreate's changelog
searchcommand: Searches for matched command
- Cleaned up code
--licensearg: Displays license- Tweaked the intro
- Code cleanup
resetcommand: Removes ALL installed commands
- Bug fix
- Partially enhanced error handling
--get_offline_filesargument: Downloads files needed to use cmdcreate offline.- Added
vscodiumas a supported text editor
- Bug fix: Retrieving offline files always fails due to missing directory
--remove_offline_filesargument: Removes offline files
- You can now install cmdcreate with a
.debfile (Found in thereleasestab) - Added
bash,curl, andnanoas dependencies
- Bug fixes:
- Fixed reporting of incorrect version
- Enhancements/Fixes for command
list:- Now shows the number of installed commands
- Fixed incorrect reporting of if commands are installed
- Now shows the number of installed commands
- Enhancements/Fixes for command
search:- Now shows the number of commands that contain your input
- Cleaned up code
- Misc enhancements:
- When you don't enter enough arguments for a command, it will display its usage.
- New arguments:
--credits: Displays credits for cmdcreate--debugging: Displays flags used for debugging- Flags for debugging: -
--arg_count: Displays number of arguments supplied ---force_system_shell: Forces system shell to be used when running commands
- Flags for debugging: -
- Cleaned up code a bit
- Fixed bug where cmdcreate would allow you to delete a command that doesn't exist
- Cleaned up code a bit
- Fixed bug where cmdcreate would allow you to delete a command that didn't exist
- Fixed bug where you would have insufficient write access to commands.
- New commands:
check: Allows you to check for cmdcreate updates.update: Allows you to update cmdcreate easily.
- Updated AUR update method by cloning the
cmdcreatebranch from the AUR directly. - Code optimizations and cleanup
- Other small changes
updatecommand is now disabled if you run the latest version.- Added
vscodium-insidersas a supported editor - Removed
creditsflag, no purpose.
- When resetting cmdcreate, it will now have a double check just in case
- cmdcreate no longer checks for updates when running
cmdcreatewith no arguments/flags
- Code optimizations
- Added
kwriteas a supported editor displaycommand: Displays the contents of a command- Overhaul to the intro
renamecommand: Allows you to rename commands- Usage:
cmdcreate display <command> <new name>
- Usage:
- Code optimizations
- Improved error handling
- Heavy code optimizations
- Fixed bug in command
display- Fixed the output of
%at the end of the output
- Fixed the output of
- Debugging flag:
--offline: Allows you to run commands without an internet connection
- Code optimizations
- Tweaks to command
rename- Removed the line showing how many results there are
- Code optimizations
- Output fixes
- Organized file structure
- Colored text output
- Help output overhaul
- Bug fix
- Fixed when upgrader retrieves wrong file name string.
- Code optimizations
- Code optimizations
--force/-fflag: Skips confirmation for an action- Typos and bug fixes
- Improved debugging menu
- Typo fix
- Bug fixes
- When upgrading through the AUR, you now have to options:
- Use AUR manager (Yay and Paru only)
- Clone repository
- Heavy code optimizations
- Code optimizations
- File structure overhaul
- Fixed the broken update checking
- Code optimizations
- You can now install/update cmdcreate through a
.rpmfile - Fedora system support
- Removed
resetcommand - Removed
--arg_count/aand--offline/-oflags - Bug fixes
- Fixed bugs
- Slow startup
- Fixed commands not deleting
- Code optimizations
- You can now
import/exportcommands- Added commands
import <file input>export <output directory>
- Added commands
- Fixed commands not deleting again
- Code optimizations
- Fixed typos
- Added proper documentation/code comments to files
- Optimized changelog
- Code optimizations
- Added
favoritecommand- Usage
addAdds a command to favoritesremoveRemoves a command from favorites
- Displays listed commands with an additional
★
- Usage
- Updated information about updates
- Code optimizations
- Exporting/importing commands should now work properly
- Code optimizations
- Other tweaks
- AUR users: compile error
- Code optimizations
- Attempt to fix the compile error for AUR users again
- Fixed odd listing when updating with a
.rpmor.debfile - Misc tweaks
- Tons of code optimizations
- Tons of bug fixes
- Added command:
repair- Fixes commands by recreating missing binaries in
/usr/bin - Usage:
cmdcreate repair
- Fixes commands by recreating missing binaries in
- Quick fix
- Typo fix
- Code optimizations
- Added testing library
- Run tests:
- Backup (importing/exporting)
- Command creation
- Displaying of command contents
- Editing of command contents
- Listing commands
- Favoriting commands
- Removing commands
- Renaming commands
- repairing commands
- Searching for commands
- Run tests:
- Code optimizations
- File restructure
- Added better comments/documentation to feature testing scripts
- Fix (Update: Did not work, was fixed in v0.8.3)
- Major code optimizations and fixes
- Updated/fixed Python testing scripts for version 3.13.11
- Other random fixes
- Fixed command not installed error when running
cmdcreate edit - Reorganized the file structure a bit
- Added
mousepad,zed, andzed-betaas supported editors - Changed some statics to consts for consistency
- Added copyright and license information to version display
- Code optimizations
- You can now run all tests by picking option 11 in the Python script
- Other random fixes
- Code optimizations
- Formatted shell files to make them look better
- Overhauled upgrading command
- It can now detect your distro (hopefully)
- PLEASE and I mean PLEASE report issues
- It can now detect your distro (hopefully)
- You can no longer use the CTRL-C shortcut to exit
- Meant to prevent accidental exits and break things
- Fixed AUR packages not installing (my mistake)
- Removed
--supported_editors/-sflag: Why would you need this? - Code optimizations
- Fixed bug where the CTRL-C disabled caused crashes
- Added more information in
Cargo.toml - Code optimizations
- The upgrading process should work a bit better now
- Optimized the sh!t out of the code, reorganized tons of stuff
- Ctrl-C is no longer disabled
bashis no longer a dependency- Code optimizations
- Fixed bug: (Thank you
Dominiquinifor bringing this to my attention!)- File not found error for creating, removing, listing commands
- Code optimizations
- Other small tweaks
- Code optimizations
- Added support for configurations
- For all available configurations, visit:
- Changed license to
GPL-2.0-only
- Code optimizations
- Fixed
-fand--forceflags not working - Made
searchcommand output look nicer
- Updated dependency
reqwestto version0.13 - Overhauled a couple of the shell scripts
- Code optimizations
- Code optimizations
- cmdcreate will now detect your CPU and will let you know if it is supported
- New configuration:
fake_arch- Spoofs your architecture to make cmdcreate think it is supported
- boolean
falseby default
- Updated copyright information
- Code optimizations
- cmdcreate will now exit if you create a command with no contents
- New configuration:
fake_arch- A symbol or string of text to indicate a favorite command
- String
"★"by default
- Attempt to fix AUR install errors
- Code optimizations
- Fixed multiple issues with the upgrade process
- You now have the option to build from source from the latest git in the upgrading process.
- Installing via
AURshould now work on any cpu architecture
- Code optimizations
- You now have the option to build from source from the latest git from the AUR in the upgrading process
- Downgraded dependency
reqwestto version0.12due to build issues AUR installation
- Code optimizations
- Random tweaks
- Config
fake_archhas been renamed tospoof_arch - Added additional message about disabling unsupported architectures in the configuration file
- Fixed dependency issues when installing on
Debian/Ubuntusystems - Code optimizations
- Fixed bug where that cmdcreate would crash if it tried to delete a folder that didn't exist
- Fixed misdetection of architecture
- Overhauled the upgrade process to be more reliable
- Added logging
- Added verbose output
- Example:
[LOG] <file::function() of origin>: <details>
- Example:
- New debug flag:
-v,--verbose- Used for verbose output of logs
- Added configurations:
time_format- Time format used for logs
- String
- Default:
%Y-%m-%d %H:%M:%S
verbose- Enabled verbose logging by default
- Boolean
- Default:
false
- Code optimizations
- File structure changes and organizations
- Installation of commands have now moved to
/usr/local/bin/<command name> - Fixed (yet again) issues with the distro detection and upgrade process
- The unsupported architecture message now gives you an option to disable it in the configuration file
- Fixed crash when first installed
- Fixed issues regarding building from source
- Code optimizations
- Fixed dependency issues when installing on
Fedorasystems - Code optimizations
- Fixed issue when launching for the first time
- Code optimizations
- Added ability for testing using
cargo test - Added launch options for
Visual Studio Code
- Code Optimizations
- When given the option to update to the latest git, it will now show you the latest commit.
- Fixed issues when updating through the AUR
- Fixed issues when creating a command
- Code optimizations
- When running the testing Python script, you now have the ability to easily abort.
- Provided tons of documentation
- Commands and how to use them
- Developing cmdcreate
- Configuring cmdcreate
- You will now be warned if a command that you want to rename another command to with the same name
- You will now be thrown an error for trying to remove a command from favorites that isn't in there
- Fixed incorrect paths when repairing commands
- When upgrading, you are now asked if you want to upgrade before anything else.
- Code optimizations
- You can now stack arguments
- Example:
$ cmdcreate -Vvcr
- Example:
- Various documentation improvements and additions
- Added information about resources
- Added information about updates
- Added information about the file structure
- Various quality of life changes
- I've hopefully made cmdcreate more developer-friendly
- Fixed ~/rpmbuild from not being deleted
- Fixed license file from not being downloaded
- Code optimizations
- Created splash screen for verbose output
- Using
format.shnow uses markdownlint - Added documentation info about cmdcreate
- Improved documentation
- You can now use the
EDITORenvironment variable when usingcmdcreate edit
- Removed the CPU Arch. warning from the init process
- Code optimizations
- Removed
-F/--force_system_shellflags - Improved the developer environment setup script.
- Checking for updates can now detect if you are running a development build
- Code optimizations
- Cleaned up code
- Reorganized file structure
- Added restrictions for updating on unsupported architectures
- The verbose intro now shows whether the installation is a stable or development build
- You will now be kicked out from checking for updates or updating cmdcreate if you have no internet
- Optimized internal updating process
- Added command:
clean- Can clean up old and unused files
- New developer utility:
dev/clean.sh- Cleans up the development environment
- Reorganized file structure
- Only applies to development tools
- Made shell files look nicer
- You now need to run cmdcreate as root (like using sudo)
- Installation of commands has moved to /usr/local/bin/(command)
- Removed command
repair: No longer needed - Update methods are only listed if they apply to your system
- Removed
repairtest - Code optimizations
- Added flag:
-o,--offline- Used when you want to use cmdcreate offline
- Removed home directory information from verbose init
- Added internet connection status to verbose init
- Certain things are now restricted if you don't have an internet connection
- Fixed offline mode being detected incorrectly
- Added a hidden offline flag for dev/install.sh
- Code optimizations
- Fixed random crash when args are being parsed
- Fixed error when updating via binary
- Many code optimizations
- Building from source when updating should now build properly
- Building from source now dynamically shows the warning for manual intervention
- Change license to GPLv3
- Moved configurations from .config/cmdcreate/config.toml to /etc/cmdcreate.toml
- Fixed configs not being read
- Code optimizations
-mand--monochromeflags: Disables colored output- New configuration
disable_color- Located in
appearancecategory - Enables or disables color
- Boolean
- Default:
false
- Located in
- When installing through the AUR, .deb package, or .rpm package, they now include the License file in their respective directories.
- Fixed license not being read on Debian systems
- Fixed incorrect response parsing during the update process
- Fixed other things along the update process
- Code optimizations
- Overhauled the debug verbose logging intro
- Removed the following flags/args (No need for them anymore):
-g/--get_offline_files,-r/--remove_offline_files- No need for offline files anymore
-d/--debug- No need for this menu
- Removed debug flag menu, moved
-V/verboseand-f/--forceto normal usage screen - Slight tweaks to the usage dialog
- Code logic fixes
- Code optimizations
- Many code optimizations
- Generational amounts of refactoring
- Commands created by cmdcreate are now identified by a header inserted into the file
- Small quality of life changes
- cmdcreate now auto-downloads the license if not installed (
curlis required)
- Added flags
-b/--bypass-root- Allows you to bypass root requirements
- ONLY USE IF YOU KNOW WHAT YOU ARE DOING
- Code optimizations
- Optimized how parsing works
- Optimized parts of the updating process
- Optimized how internal project metadata is handled
- Optimized how logging is categorized
- Other code optimizations
- Fixed typo
- Removed command "clean": Fundamentally useless
- Code optimizations
- Optimized command and argument parsing
- New flags for command
create:--in_editor/-i- Allow to write the contents of the new command from a text editor
- You can now delete multiple commands at once
- Example:
cmdcreate remove command1 command2
- Example:
- Added success checks for the following commands:
createremoverenamefavorite
- Command
renamenow handles favorite command status properly - Fixed issues with internet detecting
- Other small tweaks
- ACTUALLY fix issues with internet detecting
- Code optimizations
- Fixed incorrect error message when renaming command
- Fixed autogenerated message from not being written for configs
- Added better dynamic info for the verbose logging intro
- Code optimizations
- Optimized how commands are initially retrieved
- Heavily organized file structure among system functions
- Made verbose output nicer in the development environment setup script (dev/setup_env.sh)
- Success of installing license is now determined
- You can now create a command while not entering the command contents when
running with
-i/--in-editor:cmdcreate create command-name -i
- Enhanced the updating experience
- Made it less loud, only necessary output
- Code optimizations
- Updated how messages are printing and better string formatting for functions
such as:
run_shell_command!()output!()- Replacing the use of
println!()
- Replacing the use of
input!()
- Updated how messages are printing and better string formatting for functions
such as:
- Overhauled output messages and text to look nicer
- As of this update, there are some inconsistencies, which will be fixed in the future.
- Continued migration to macro my macro
output!()located in src/utils/io.rs - Updated dependencies
- reqwest
0.12.28->0.13.2
- toml
1.0.6->1.1.2
- reqwest
- Updated both
cmdcreateandcmdcreate-gitPKGBUILD scripts- They were messy
- Added fixes needed for updated dependencies
- Created script to more easily install cmdcreate on non-Arch based distros
- Script
cmdcreate/dev/uninstall.shnow handles the license when uninstalling
- Development utility bash scripts now have color to make them look cleaner
- Favorites data and logs are now stored in
/usr/share/cmdcreate/ - Added more dependencies to development environment setup script
src/dev/format.shnow formats/fixes Markdown (.md) and YAML (.yml) files- Workflow
markdownnow lints Markdown (.md) and YAML (.yml) files - Added new command:
config- Usage:
cmdcreate config <add/remove> <category> <value>
- Usage:
- Brought back shell configuration after I accidentally removed it
- Code optimizations
- Running
cmdcreate -vnow shows the build status - Added
xedas a supported text editor - Added new dependency:
less
- Added new command (
doc):- Usage:
sudo cmdcreate doc <information>
- View the following documentation references:
main(The main README file)changelog(The complete version history of cmdcreate)license(The license for cmdcreate)security(Security information)contributing(Information about contributing)intro(Intro to the documentation)about(About cmdcreate and its purpose)commands(About the current commands in cmdcreate)configurations(Information of configuring cmdcreate)developing(Information on developing cmdcreate)structure(The file structure of cmdcreate)updates(Information on updates)testing(Information about testing the features of cmdcreate)packaging(Information about packaging cmdcreate)
- Usage:
- Retired the following flags for replacement with
cmdcreate doc-c/--changelog- New usage:
cmdcreate doc changelog
- New usage:
-l/--license- New usage:
cmdcreate doc license
- New usage:
- Viewing the changelog and license (along with new the documentation viewer)
now uses
less
- Fixed
cmdcreate doc changelog, I got the code logic wrong - Added missing
code_of_conductoption forcmdcreate doc - In addition to
cmdcreate doc list, you can now just runcmdcreate docto get the list of available documentation.
- Improved the visual output when building from source
- Updated dependency 'reqwest' to v0.13.3
- New flag:
-s/--silent- Suppresses any output that's not an error
- Began work on new testing suite
- Code optimizations
- Updated documentation for cmdcreate commands
dev/format.shnow runs clippy- Overhauled the messages for getting usage for cmdcreate
- Changes for command
config:- New subcommands:
- help
- Get documentation for configuring cmdcreate
- example
- View an example config file
- edit
- Edit the configurations through a text editor
- display
- Display the configurations to output
- help
- Overhauled to be more user-friendly
- Fixed weird crashes
- New subcommands:
- Code optimizations
- Reorganized filesystem related functions
- Now located in
src/utils/fs/
- Now located in
- Reorganized filesystem related functions
- Changes in usage for running as root
- You now only need to run cmdcreate for some commands
- You will need root for commands like:
createremoveedit
- You will not need root for commands like:
listsearchexport
cmdcreate updatewill require root depending on how you update- Running flags no longer require root by themselves
- You will need root for commands like:
- You now only need to run cmdcreate for some commands
- Slightly improved the updating experience
- Root status is now included in the verbose debug intro
- Logs are now stored in
/tmp/. They are deleted on reboot/shutdown. - Reintroduced the ability to update via the AUR when using
cmdcreate update - Overhauled filesystem initialization
- Fixed documentation not being deleted after being retrieved
- Fixed passed args not being collected/read properly
- Code optimizations
- Fixed permission denied error for when you download license not as root
- Y/N question prompts can no longer be silent, even when passing
-s/--silent. This is done to prevent cmdcreate from doing things without your consent. - Shell commands are now made silent through the
-s/--silentflags rather than manually dev/clean.shnow formats code before cleaning up cargo- Before, it would clean up the Rust environment first, then run
clippywhich created the directorytargetagain.
- Before, it would clean up the Rust environment first, then run
- Slightly modified the output for the usage of cmdcreate to be better at color coding
- Fix crash when user tries to build from source without root
- Changed log directory to
/tmp/cmdcreate-logs/
- Enhanced UX
- Code optimizations
- Fixed hang on startup when running for the first time
- I have no idea if this problem was exclusive to virtual machines, but that's how I discovered the issue.
- You can now use the following subcommands of command
configwithout root:helpexampledisplay
- New flag for documentation file
changelogin commandcmdcreate doc changelog--latest/-l- Get the latest entry in the changelog
- Fixed flag
-lnot being detected when runningcmdcreate doc changelog -l - cmdcreate is now statically linked, meaning that dependencies such as
opensslandcmakeare no longer needed - Added support for 32 bit systems, and options for 32 bit binaries amd packages
- Replaced dependency
reqwestwithureq- Less/no build dependencies
- Shorter compile time
- Code optimizations
dev/install.shnow installs a statically linked file
- Organized file structure for command source files (
src/commands/*) - Fixed parsing errors when adding a new config
- Code optimizations
- Added support for 32 and 64-bit ARM CPUS
aarch64armv7
- Absolutely overhaul file structure
- Code optimizations
- Overhauled how usage of commands is displayed
- Fixed confusing parsing for command
export - Change description
- Fix usage displayed for commands
searchandfavorite