Home

Awesome

title

Overview

A TUI(terminal user interface) which provides updates and maintains an Arch based linux distribution. This program provides numerous tools to Arch Linux users. The program is menu-based and written in bash. It is mainly text based but also uses dialog GUI's at a few points mainly for directory and file selection. It can also display desktop notifications. A detailed list of the dozens of options is provided below in features section.

Donate

Table of contents

Installation

cylon is installed by PKGBUILD on a Arch based Linux system. The PKGBUILD file is available in the AUR - Arch user repository. Install it using an AUR helper program or installations instructions on Arch user repository page of Arch linux wiki. The program should work on most arch based distributions. Arch, Manjaro, EndeavourOS etc.

Usage

The program installs an icon in system application menus under system.

icon

It can be also run in a terminal by typing cylon:

cylon -[options]

Options list (standalone cannot be combined):

OptionDescription
-h --helpPrint cylon information and exit
-s --systemPrint system information and exit
-v --versionPrint version information and exit
-c --configOpens the cylon config file for editing and exit
-d --defaultBleachbit system clean , this will execute options selected in bleachbit GUI or bleachbit config file
-b --bleachbitOpens the bleachbit select menus
-m --maintRuns Automatic system maintenance scan This carries many of the menu functions in system maintenance menu in a single sweep, It will not change system just create report files
-u --updateRuns a full update report with various execution options. Report provides Arch news rss reader & arch-audit vulnerable packages output CVE data(Common Vulnerabilities and Exposures) & number and type of updates available for all repos
-p --printprint the package lists (REF1)
-r --rssprint arch news reader
-z --deletedisplay the AUR package removal dialog menu function
-l --lintshortcut to open rmlint wrapper menu
-n --notifyDisplay a desktop notifications with update information, also gives some terminal output

Files and setup

Cylon files installed by the package build are listed below:

File PathDescription
/usr/bin/cylonThe main shell script
/usr/lib/cylon/modules/*_modulelibrary files containing functions
/usr/share/doc/cylon/readme.mdHelp file
/usr/share/man/man7/cylon.7manpage
/usr/share/licenses/cylon/license.mdcopyright file
/usr/share/pixmaps/cylonicon.pngcylon icon
/usr/share/applications/cylon.desktopdesktop entry file

README.md is displayed to screen by a menu option on cylon info page. Type "man cylon" to display manpage. More information on the modules files can be found in modules_info.md in documentation folder. In the repository documentation folder,

File Namedescription
cylon.7man page which is truncated version of readme.md
cylonCfg.confA dummy copy of config file for user setup convenience
modules_info.mdAn overview of the modular library files and the functions
package_lists.mdAn overview of the packages files list generated by program
features_info.mdMore detailed information for some features

Config file: config file is created and populated( hard-coded dummy defaults.) by software if it does not exist on startup . It contains a number of global variables/settings This Path can be overwritten by environmental variable see next section. The config file can be edited from a main menu option or by option -c Config file settings:

Variable NameDescriptionDefault
CYLON_RSS_NUMNumber or arch news RSS items to fetch2
CYLON_RSS_URLArch news URLhttps://archlinux.org/feeds/news/
CYLON_UPDATE_CHOICEAuto sys update 1=main only = 2=all 3=AUR only1

Environment variables

NameDescriptionDefault
CYLONDESTCylon output path$HOME/.cache/cylon
CYLON_CONFIGconfig file path$HOME/.config/cylon/cylonCfg.conf
CYLON_COLOR_OFFif it does not exist or is not set cylon uses colored textColor is on
EDITORSets text editor (system EV)Nano text editor

Dependencies

Some functions require dependencies packages to be installed. There are three dependencies and the rest are optional dependencies. The optional dependencies are left to user discretion. Software will check for missing dependencies and report if user tries to use a function which requires a missing one. Software will display installed dependencies packages on cylon info page. also "n/a" is usually displayed besides uninstalled options in menus.

gnu-netcat and openbsd-netcat perform same function, only 1 can be or needs to be installed, both included because of conflicts. There are used to check that network is "up" at various points in program.

Auracle and trizen are both AUR helpers you can install one or both depending on preference. Auracle is a more minimalist helper. trizen is more fully featured. Auracle is used for -u and -n functions, plus step 24 of the package list maker Auracle is new and still in development hence the -git extension. libnotify should be installed on the vast majority of Arch systems already. dialog should already be installed in an arch linux system installed by the arch linux installation guide on wiki. If you install Arch some other way It may not be there, so included as depends. expac is used a lot and will be already installed on many systems. pacman_contrib contains numerous tools(checkupdates pacache etc)related to pacman.

Non-Optional DependenciesUsage
dialogused to make file select menus
expacused to create package lists
pacman-contribMisc pacman related tools
Optional DependenciesUsage
libnotifyused for desktop notifications
bleachbitfor system clean and shredding
netcatto check for internet connection (either gnu or openbsd)
rmlintto check for lint and duplicates
Arch-auditUses data collected by the Arch CVE team
lostfilesto scan for lostfiles
trizen(AUR)AUR helper
auracle-git(AUR)AUR helper

Features

The update section provides a wrapper for pacman, trizen and auracle. It provides an extension to auracle to allow it to install and update packages. It also provides a full system update report function and various other options. The maintenance section provides a variety of scans and checks, it also a provides command line wrapper for rmlint and bleach-bit. Other misc functions include an option to edit config file, information menus for system and cylon. Output folders are created with following time/date stamp syntax DDMONYY-HHMM-X where X is output type i.e download, update etc

System update section

System maintenance section

Miscellaneous section

Return codes

Screen Shots

Main Menu

main menu

Arch News

Arch News

Bleach bit CLI

BB

Desktop notification

Desktop

Pacman options menu

Pacman

Remove foreign packages menu

f menu