diff --git a/Makefile b/Makefile index daae2c6..5d0f21d 100644 --- a/Makefile +++ b/Makefile @@ -1,3 +1,4 @@ +localpath = scripts path = ~/.shellrc/bin/scripts find := $(shell { command -v gfind || command -v find; } 2>&-) @@ -10,18 +11,17 @@ rmdir: @rmdir $(path) 2>&-; : install: mkdir - @$(find) . \ + @$(find) $(localpath) \ -maxdepth 1 \ -type f \ -executable \ - -exec basename {} \; \ | while read -r line; do \ - ln -s $$(realpath -- $$line) $(path)/$$line 2>&-; \ + ln -sv $$(realpath -- $$line) $(path)/$$(basename $$line) 2>&-; \ done; \ true rmlinks: - @$(find) . \ + @$(find) $(localpath) \ -maxdepth 1 \ -type f \ -executable \ diff --git a/README.md b/README.md index c50a1ba..5c5e761 100644 --- a/README.md +++ b/README.md @@ -19,101 +19,101 @@ will create the symbolic link for each script in the \ directory. ## Shell -- [dus](dus) shows the directories' sizes sorted in descending order (see also [dust](https://github.com/bootandy/dust)). -- [ext](ext) unpacks archives. -- [pk](pk) creates archives of various types. -- [fcheck](fcheck) marks a file as read. -- [fucheck](fucheck) marks a file as unred. -- [fontsel](fontsel) shows the available console fonts. -- [fsz](fsz) adjusts console font size. -- [hr](hr) displays horizontal rule with current time. -- [renamepdfs](renamepdfs) renames PDF files using their metadata. -- [vcat](vcat) displays file content with [syntax highlighting](https://www.gnu.org/software/src-highlite/) (see also [bat](https://github.com/sharkdp/bat)). -- [viper](viper) is a simple alternative to viper from [moreutils](https://joeyh.name/code/moreutils/) package which can be used with custom vim parameters. +- [dus](scripts/dus) shows the directories' sizes sorted in descending order (see also [dust](https://github.com/bootandy/dust)). +- [ext](scripts/ext) unpacks archives. +- [pk](scripts/pk) creates archives of various types. +- [fcheck](scripts/fcheck) marks a file as read. +- [fucheck](scripts/fucheck) marks a file as unred. +- [fontsel](scripts/fontsel) shows the available console fonts. +- [fsz](scripts/fsz) adjusts console font size. +- [hr](scripts/hr) displays horizontal rule with current time. +- [renamepdfs](scripts/renamepdfs) renames PDF files using their metadata. +- [vcat](scripts/vcat) displays file content with [syntax highlighting](https://www.gnu.org/software/src-highlite/) (see also [bat](https://github.com/sharkdp/bat)). +- [viper](scripts/viper) is a simple alternative to viper from [moreutils](https://joeyh.name/code/moreutils/) package which can be used with custom vim parameters. ## Audio -- [a2mp3](a2mp3) converts wav audio files to mp3 format. -- [axaudio](axaudio) gets an information and audio stream from Axia Livewire network. -- [mptk](mptk) allows to control mpd via mpc and store song's rating into id3v2 commentary tag. -- [retag](retag) writes id3 tags based on file path. -- [radio](radio) plays the internet radio stations from a list stored in the file. -- [vls](vls) runs vlc-ncurses with increased speed. +- [a2mp3](scripts/a2mp3) converts wav audio files to mp3 format. +- [axaudio](scripts/axaudio) gets an information and audio stream from Axia Livewire network. +- [mptk](scripts/mptk) allows to control mpd via mpc and store song's rating into id3v2 commentary tag. +- [retag](scripts/retag) writes id3 tags based on file path. +- [radio](scripts/radio) plays the internet radio stations from a list stored in the file. +- [vls](scripts/vls) runs vlc-ncurses with increased speed. ## Texts -- [dada](dada) creates random 'verse' from the text. -- [fb2](fb2) opens fb2 files in w3m browser. -- [nt](nt) displays New Testament texts in two languages line by line. -- [spread](spread) opens file in [speedread](https://github.com/pasky/speedread) program via terminal emulator with custom settings. -- [tree2md](tree2md) creates markdown list and links of directory tree. -- [writeup](writeup) opens distracted-free Vim editor with custom color scheme, fonts and plug-ins. +- [dada](scripts/dada) creates random 'verse' from the text. +- [fb2](scripts/fb2) opens fb2 files in w3m browser. +- [nt](scripts/nt) displays New Testament texts in two languages line by line. +- [spread](scripts/spread) opens file in [speedread](https://github.com/pasky/speedread) program via terminal emulator with custom settings. +- [tree2md](scripts/tree2md) creates markdown list and links of directory tree. +- [writeup](scripts/writeup) opens distracted-free Vim editor with custom color scheme, fonts and plug-ins. ## Images -- [img50](img50) resizes an image by half. -- [imgRL](imgRL) rotates an image to the left. -- [imgRR](imgRR) rotates an image to the right. -- [imgview](imgview), [lsi](lsi), [lsimage](lsimage) and [lsimg](lsimg) display images in a terminal emulator. -- [photosort](photosort) renames the image files by exif data. -- [th](th) makes an image thumbnail. +- [img50](scripts/img50) resizes an image by half. +- [imgRL](scripts/imgRL) rotates an image to the left. +- [imgRR](scripts/imgRR) rotates an image to the right. +- [imgview](scripts/imgview), [lsi](scripts/lsi), [lsimage](scripts/lsimage) and [lsimg](scripts/lsimg) display images in a terminal emulator. +- [photosort](scripts/photosort) renames the image files by exif data. +- [th](scripts/th) makes an image thumbnail. ## Notes -- [dates](dates) + conky or similar software remind of upcoming events (birthdays, etc.). -- [mem](mem) stores the shorts notes in the file. -- [pomodoro](pomodoro) tracks the working time. +- [dates](scripts/dates) + conky or similar software remind of upcoming events (birthdays, etc.). +- [mem](scripts/mem) stores the shorts notes in the file. +- [pomodoro](scripts/pomodoro) tracks the working time. ## WWW -- [bor](bor) displays the latest posts from [bash.im](https://bash.im) website. -- [ibor](ibor) displays the latest posts from [ibash.im](https://ibash.im) website. -- [vandroucli](vandroucli) retrieves the newest posts from the vandrouki websites ([ru](https://vandrouki.ru), [by](https://vandrouki.by), [asia](https://vandrouki.asia)). +- [bor](scripts/bor) displays the latest posts from [bash.im](https://bash.im) website. +- [ibor](scripts/ibor) displays the latest posts from [ibash.im](https://ibash.im) website. +- [vandroucli](scripts/vandroucli) retrieves the newest posts from the vandrouki websites ([ru](https://vandrouki.ru), [by](https://vandrouki.by), [asia](https://vandrouki.asia)). ## System -- [defgroups](defgroups) adds a user to default system groups. -- [passgen](passgen) creates the strong passwords. -- [sync-date](sync-date) sets system time according to Google. -- [xsmartlight](xsmartlight) allows to adjust ASUS smartscreen's brightness. -- [use](use) shows Gentoo USE flag's description. +- [defgroups](scripts/defgroups) adds a user to default system groups. +- [passgen](scripts/passgen) creates the strong passwords. +- [sync-date](scripts/sync-date) sets system time according to Google. +- [xsmartlight](scripts/xsmartlight) allows to adjust ASUS smartscreen's brightness. +- [use](scripts/use) shows Gentoo USE flag's description. ## Development tools -- [doctools2man](doctools2man) converts doctool to man pages. -- [gitea-mirror](gitea-mirror) mirrors Gitea repositories. -- [gitlab-ci-graph](gitlab-ci-graph) draws a graph of the GitLab CI Pipeline file. -- [gitlab-ci-linter](gitlab-ci-linter) checks Gitlab CI Pipeline syntax via GitLab API. -- [how](how) shows dev cheat sheets using [cheat.sh](https://cheat.sh). -- [robodoc2html](robodoc2html) converts a documentation in the robodoc format into html. -- [todolist](todolist) shows all `TODO` notes in current git repository. -- [vault-kv-tree](vault-kv-tree) shows all HashiCorp Vault's paths and keys recursively. -- [utable](utable) shows a Unicode table. +- [doctools2man](scripts/doctools2man) converts doctool to man pages. +- [gitea-mirror](scripts/gitea-mirror) mirrors Gitea repositories. +- [gitlab-ci-graph](scripts/gitlab-ci-graph) draws a graph of the GitLab CI Pipeline file. +- [gitlab-ci-linter](scripts/gitlab-ci-linter) checks Gitlab CI Pipeline syntax via GitLab API. +- [how](scripts/how) shows dev cheat sheets using [cheat.sh](https://cheat.sh). +- [robodoc2html](scripts/robodoc2html) converts a documentation in the robodoc format into html. +- [todolist](scripts/todolist) shows all `TODO` notes in current git repository. +- [vault-kv-tree](scripts/vault-kv-tree) shows all HashiCorp Vault's paths and keys recursively. +- [utable](scripts/utable) shows a Unicode table. ### Git -- [git-aliases](git-aliases) shows a commented list of all git aliases. -- [git-cblame](git-cblame) adds a syntax highlighting to the standard `git blame` command. -- [git-forks](git-forks) shows the latest forks of github repository. -- [git-graphviz](git-graphviz) creates dot-graph of a git repository. -- [git-ignore](git-ignore) gets specified gitignore settings from [https://gitignore.io/](https://gitignore.io/) website. -- [git-makeignore](git-makeignore) stores files with '+GITIGNORE' marks into .gitignore file. -- [git-recent](git-recent) lists all local branches, sorted by last commit. (c) https://github.com/paulirish/git-recent -- [git-top](git-top) shows the most edited files in current git repository. +- [git-aliases](scripts/git-aliases) shows a commented list of all git aliases. +- [git-cblame](scripts/git-cblame) adds a syntax highlighting to the standard `git blame` command. +- [git-forks](scripts/git-forks) shows the latest forks of github repository. +- [git-graphviz](scripts/git-graphviz) creates dot-graph of a git repository. +- [git-ignore](scripts/git-ignore) gets specified gitignore settings from [https://gitignore.io/](https://gitignore.io/) website. +- [git-makeignore](scripts/git-makeignore) stores files with '+GITIGNORE' marks into .gitignore file. +- [git-recent](scripts/git-recent) lists all local branches, sorted by last commit. (c) https://github.com/paulirish/git-recent +- [git-top](scripts/git-top) shows the most edited files in current git repository. ## WM -- [calculator](calculator) computes mathematical expressions with variables and intermediate values. -- [fix-eselect](fix-eselect) adjusts 'type' command in gentoo's eselect scripts. -- [hidecursor](hidecursor) moves cursor to upper right screen angle. -- [musca_status](musca_status) shows a list of all musca's workspaces. -- [poweroff-dialog](poweroff-dialog) and [asroot](asroot) provide a menu with 'shutdown', 'reboot' and 'suspend' commands. -- [windows](windows) shows a list of the all opened windows. -- [www](www) opens rofi menu with the most used www-links. -- [x-open](x-open) opens files via xdg-open (on Linux systems) or via open command (on MacOS). -- [xstab](xstab) runs [st](https://st.suckless.org/) terminal with the [tabbed](https://tools.suckless.org/tabbed/). +- [calculator](scripts/calculator) computes mathematical expressions with variables and intermediate values. +- [fix-eselect](scripts/fix-eselect) adjusts 'type' command in gentoo's eselect scripts. +- [hidecursor](scripts/hidecursor) moves cursor to upper right screen angle. +- [musca_status](scripts/musca_status) shows a list of all musca's workspaces. +- [poweroff-dialog](scripts/poweroff-dialog) and [asroot](scripts/asroot) provide a menu with 'shutdown', 'reboot' and 'suspend' commands. +- [windows](scripts/windows) shows a list of the all opened windows. +- [www](scripts/www) opens rofi menu with the most used www-links. +- [x-open](scripts/x-open) opens files via xdg-open (on Linux systems) or via open command (on MacOS). +- [xstab](scripts/xstab) runs [st](https://st.suckless.org/) terminal with the [tabbed](https://tools.suckless.org/tabbed/). ## Other -- [currency](currency) shows the currency rate. +- [currency](scripts/currency) shows the currency rate. diff --git a/a2mp3 b/scripts/a2mp3 similarity index 100% rename from a2mp3 rename to scripts/a2mp3 diff --git a/asroot b/scripts/asroot similarity index 100% rename from asroot rename to scripts/asroot diff --git a/axaudio b/scripts/axaudio similarity index 100% rename from axaudio rename to scripts/axaudio diff --git a/bor b/scripts/bor similarity index 100% rename from bor rename to scripts/bor diff --git a/calculator b/scripts/calculator similarity index 100% rename from calculator rename to scripts/calculator diff --git a/currency b/scripts/currency similarity index 100% rename from currency rename to scripts/currency diff --git a/dada b/scripts/dada similarity index 100% rename from dada rename to scripts/dada diff --git a/dates b/scripts/dates similarity index 100% rename from dates rename to scripts/dates diff --git a/defgroups b/scripts/defgroups similarity index 100% rename from defgroups rename to scripts/defgroups diff --git a/doctools2man b/scripts/doctools2man similarity index 100% rename from doctools2man rename to scripts/doctools2man diff --git a/dus b/scripts/dus similarity index 100% rename from dus rename to scripts/dus diff --git a/ext b/scripts/ext similarity index 100% rename from ext rename to scripts/ext diff --git a/fb2 b/scripts/fb2 similarity index 100% rename from fb2 rename to scripts/fb2 diff --git a/fcheck b/scripts/fcheck similarity index 100% rename from fcheck rename to scripts/fcheck diff --git a/fix-eselect b/scripts/fix-eselect similarity index 100% rename from fix-eselect rename to scripts/fix-eselect diff --git a/fontsel b/scripts/fontsel similarity index 100% rename from fontsel rename to scripts/fontsel diff --git a/fsz b/scripts/fsz similarity index 100% rename from fsz rename to scripts/fsz diff --git a/fucheck b/scripts/fucheck similarity index 100% rename from fucheck rename to scripts/fucheck diff --git a/git-aliases b/scripts/git-aliases similarity index 100% rename from git-aliases rename to scripts/git-aliases diff --git a/git-cblame b/scripts/git-cblame similarity index 100% rename from git-cblame rename to scripts/git-cblame diff --git a/git-forks b/scripts/git-forks similarity index 100% rename from git-forks rename to scripts/git-forks diff --git a/git-graphviz b/scripts/git-graphviz similarity index 100% rename from git-graphviz rename to scripts/git-graphviz diff --git a/git-ignore b/scripts/git-ignore similarity index 100% rename from git-ignore rename to scripts/git-ignore diff --git a/git-makeignore b/scripts/git-makeignore similarity index 100% rename from git-makeignore rename to scripts/git-makeignore diff --git a/git-recent b/scripts/git-recent similarity index 100% rename from git-recent rename to scripts/git-recent diff --git a/git-top b/scripts/git-top similarity index 100% rename from git-top rename to scripts/git-top diff --git a/gitea-mirror b/scripts/gitea-mirror similarity index 100% rename from gitea-mirror rename to scripts/gitea-mirror diff --git a/gitlab-ci-graph b/scripts/gitlab-ci-graph similarity index 100% rename from gitlab-ci-graph rename to scripts/gitlab-ci-graph diff --git a/gitlab-ci-linter b/scripts/gitlab-ci-linter similarity index 100% rename from gitlab-ci-linter rename to scripts/gitlab-ci-linter diff --git a/hidecursor b/scripts/hidecursor similarity index 100% rename from hidecursor rename to scripts/hidecursor diff --git a/how b/scripts/how similarity index 100% rename from how rename to scripts/how diff --git a/hr b/scripts/hr similarity index 100% rename from hr rename to scripts/hr diff --git a/ibor b/scripts/ibor similarity index 100% rename from ibor rename to scripts/ibor diff --git a/img50 b/scripts/img50 similarity index 100% rename from img50 rename to scripts/img50 diff --git a/imgRL b/scripts/imgRL similarity index 100% rename from imgRL rename to scripts/imgRL diff --git a/imgRR b/scripts/imgRR similarity index 100% rename from imgRR rename to scripts/imgRR diff --git a/imgview b/scripts/imgview similarity index 100% rename from imgview rename to scripts/imgview diff --git a/lsi b/scripts/lsi similarity index 100% rename from lsi rename to scripts/lsi diff --git a/lsimage b/scripts/lsimage similarity index 100% rename from lsimage rename to scripts/lsimage diff --git a/lsimg b/scripts/lsimg similarity index 100% rename from lsimg rename to scripts/lsimg diff --git a/mem b/scripts/mem similarity index 100% rename from mem rename to scripts/mem diff --git a/mptk b/scripts/mptk similarity index 100% rename from mptk rename to scripts/mptk diff --git a/musca_status b/scripts/musca_status similarity index 100% rename from musca_status rename to scripts/musca_status diff --git a/nt b/scripts/nt similarity index 100% rename from nt rename to scripts/nt diff --git a/passgen b/scripts/passgen similarity index 100% rename from passgen rename to scripts/passgen diff --git a/photosort b/scripts/photosort similarity index 100% rename from photosort rename to scripts/photosort diff --git a/pk b/scripts/pk similarity index 100% rename from pk rename to scripts/pk diff --git a/pomodoro b/scripts/pomodoro similarity index 100% rename from pomodoro rename to scripts/pomodoro diff --git a/poweroff-dialog b/scripts/poweroff-dialog similarity index 100% rename from poweroff-dialog rename to scripts/poweroff-dialog diff --git a/radio b/scripts/radio similarity index 100% rename from radio rename to scripts/radio diff --git a/renamepdfs b/scripts/renamepdfs similarity index 100% rename from renamepdfs rename to scripts/renamepdfs diff --git a/retag b/scripts/retag similarity index 100% rename from retag rename to scripts/retag diff --git a/robodoc2html b/scripts/robodoc2html similarity index 100% rename from robodoc2html rename to scripts/robodoc2html diff --git a/spread b/scripts/spread similarity index 100% rename from spread rename to scripts/spread diff --git a/sync-date b/scripts/sync-date similarity index 100% rename from sync-date rename to scripts/sync-date diff --git a/th b/scripts/th similarity index 100% rename from th rename to scripts/th diff --git a/todolist b/scripts/todolist similarity index 100% rename from todolist rename to scripts/todolist diff --git a/tree2md b/scripts/tree2md similarity index 100% rename from tree2md rename to scripts/tree2md diff --git a/use b/scripts/use similarity index 100% rename from use rename to scripts/use diff --git a/utable b/scripts/utable similarity index 100% rename from utable rename to scripts/utable diff --git a/vandroucli b/scripts/vandroucli similarity index 100% rename from vandroucli rename to scripts/vandroucli diff --git a/vault-kv-tree b/scripts/vault-kv-tree similarity index 100% rename from vault-kv-tree rename to scripts/vault-kv-tree diff --git a/vcat b/scripts/vcat similarity index 100% rename from vcat rename to scripts/vcat diff --git a/viper b/scripts/viper similarity index 100% rename from viper rename to scripts/viper diff --git a/vls b/scripts/vls similarity index 100% rename from vls rename to scripts/vls diff --git a/windows b/scripts/windows similarity index 100% rename from windows rename to scripts/windows diff --git a/writeup b/scripts/writeup similarity index 100% rename from writeup rename to scripts/writeup diff --git a/www b/scripts/www similarity index 100% rename from www rename to scripts/www diff --git a/x-open b/scripts/x-open similarity index 100% rename from x-open rename to scripts/x-open diff --git a/xsmartlight b/scripts/xsmartlight similarity index 100% rename from xsmartlight rename to scripts/xsmartlight diff --git a/xstab b/scripts/xstab similarity index 100% rename from xstab rename to scripts/xstab