Skip to content

commandoo : GUI Linux Command Line Interface (CLI) Helper program written with Lazarus / free pascal

License

Notifications You must be signed in to change notification settings

Juuliuus/commandoo

Repository files navigation

commandoo : GUI Linux Command Line Interface (CLI) Helper program written with Lazarus / free pascal

Free-as-in-Freedom, Written under GNU GPL license.

=== 
02 March 2021: commandoo 2.1.0

Release history at bottom of this document. This is "free" as in "freedom" software.

This is a GUI program designed to help the newcomer (and veteran) with the Linux Command Line Interface (CLI).

It is designed to be a 'helper' in the sense that one can store favorite / useful commands for quick retrieval and use later. It is designed to be a reference as well, it has a 'starter' database of 160+ Linux commands and examples. Notes and 'Threat Level' indexes are used to help the novice.

It can be helpful for veterans as well: store those complex, meter long, command lines here, no need to develop it again, simply search for it and use it as is or adapt it to the current issue.

The program is not a terminal emulator, but gives its own advantages including: run and test (most) Command Lines directly, it can serve as a launcher program, it supports pkexec, it supports variables and asks at run time for the values, complex boolean searching is implemented as well a "simple" search, it supports text based storage and sqlite databases (your choice), it supports an unlimited number of databases as you like, and help is written directly into the program through toggle-able mouse-over hints.

Currently the download is hosted at:

https://timepirate.org/downloads.html

There you will find release notes, checksums, gpg sig file, and installation instructions.


The commandoo AppImage was developed in Kubuntu 20.04 as a qt5 application and has been tested on Fedora 32, Ubuntu 20.04, Kubuntu 18.04, Manjaro 20.04, and OpenSuse Leap 15.2. I've also been told it runs in Ubuntu 16.04. So, while designed in and for the recent 20.04 distros it will run on all the LTR distros too. The released version in March 2021 also bundles the sqlite library in the appimage and so sqlite DB usage is supported. If you have any doubt you can simply use text based databases.

It doesn't matter if the distro has qt5 installed or not, it will still work because the AppImage is self-contained. Basically, it should work on any major distribution using any desktop environment (note: outside of Kubuntu 20.04 it will not pay any attention to theming, sadly. I will be working on this).

 
My "internet signing key":

0x74E59DD3 2013-12-09 JuliuS Inet (internet signing)
(full key: 4B1DFF7EDA6B0E86F85E4ECD1DB577AF74E59DD3)

 

My personal gnuGPG key is:
0xF5B71178 JuliuS <Julius@timepirate.org>
(full key: EA2A249618EA7700AE4E07030699ABF8F5B71178)


The current release is an AppImage, and that AppImage includes the required libraries. If you download & use the AppImage there is no need to add extra packages.

However, if you plan to build commandoo yourself, be aware that the build machine should have a qt5 environment, Lazarus should be configured to be able to build qt5 apps, and that two packages (available in repos) are required, one for the development environment (libqt5pas-dev), and one for the executable run-time environment (libqt5pas). With the run-time library is installed then commandoo can be run directly on the machine after it is built.

Also for self builders: There was quite a nasty bug in the current lazarus release. The only fix was to use the bleeding edge lazarus trunk version which fixed the issue. That means to build this so that it works (!) you need to use a lazarus version later than from early March 2021, or any new releases later than early March 2021. Caution: this was true in August 2020, and a new version 2.0.12 came out in Feb. 2021. That version still had the bug!! The bug was that qt5 builds had a SIGEV when using hints. So if you build this yourself you need to check after building if this bug is still an issue! If so, then try the trunk. Perhaps the fix will be in lazarus 2.1???

As regards build of AppImage: An AppDir template is provided. Place the commandoo executable in its appdir/usr/bin folder. Copy the template folder to commandoo.Appdir folder to protect the template. 

The appimage build I used/use is appimagetool from the go-appimage site (https://github.com/probonopd/go-appimage/releases)

Use the appimagetool program with the "-s deploy" flags to deploy all files into the commandoo.AppDir folder. Then use the appimagetool in create appimage mode. And the result will be a fully self contained commandoo AppImage.


commandoo was built using free pascal and the Lazarus IDE, thank you FPC and Lazarus.

Enjoy.

 
History:

02 March 2021: commandoo 2.1.0

- The AppImage is now completely self-contained in all aspects, allowing it to run on even more, and older, versions of linux distros.

- Added ctrl-shift T in edit mode to change threatlevels.

- Make Friendly Name easier to work with and more informative.

- Fix a bug when Run/Test on an edited CmdLine with input variables where <UPDATE> would appear in command string.


20 August 2020: commandoo 2.0.1

- This release version of commandoo supercedes an older version (1.0.1 March 2018).

- Numerous bug fixes, added features, "future proofing", (almost) mouseless usage, and much more.

- It is provided as an AppImage (see https://appimage.org) which allows it to run on a wide variety of gnu-linux distributions.

About

commandoo : GUI Linux Command Line Interface (CLI) Helper program written with Lazarus / free pascal

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages