6 releases
0.1.5 | Sep 10, 2023 |
---|---|
0.1.4 | Aug 20, 2023 |
0.1.3 | Apr 30, 2023 |
0.1.2 | Sep 13, 2022 |
0.1.1 | Jul 26, 2022 |
#185 in Operating systems
29 downloads per month
61KB
914 lines
Table of Contents
Install
Option 1: Build from source
- Install Rust
- Build:
$ cargo install gyr
- Add
$HOME/.cargo/bin
to your$PATH
Or build from Git:
- Build:
$ git clone https://git.sr.ht/~f9/gyr && cd gyr $ cargo build --release
- Copy
target/release/gyr
to somewhere in your$PATH
Option 2: Distro packages
Gyr is in the Arch Linux AUR (gyr
, gyr-git
and gyr-bin
).
Other distros may come soon-ish
Alternatively, pre-built binaries for Linux (x86_64 and aarch64) and FreeBSD 13.1 (x86_64) are available in the releases.
Usage
Run gyr
from a terminal. Scroll through the app list, find some app typing chars, run selected pressing ENTER. Pretty straightforward.
Oh, yes: go to the bottom with the left arrow, top with right. Cancel pressing Esc.
Alternative bindings are Ctrl-Q to cancel, Ctrl-Y to run the app, Ctrl-N scroll down and Ctrl-P to scroll up (VIM bindings).
I designed it for tiling WMs like Sway or i3.
Note for Sway: When
$SWAYSOCK
is set,swaymsg exec
is used to run the program. This allows Sway to spawn the program in the workspace Gyr was run in.
You can configure some stuff with cli flags, see gyr --help
Gyr also has a history feature, so most used entries will be sorted first. This can be reset with gyr --clear_history
There's also a config file which can be placed in $HOME/.config/gyr/config.toml
or $XDG_DATA_HOME/gyr/config.toml
(sample)
Verbosity levels (-v
, -vv
, -vvv
, each level adds logs to the previous one):
-v
: will make the launched binary inherit Gyr'sstdio
. (which means you'll see the logs)-vv
: will show the path of each app in the info-vvv
: adds some debug information (number of times the apps were run, etc.)
Sway-specific usage
This is what I have on my config file:
$ cat ~/.config/sway/config
...
set $menu alacritty --title launcher -e gyr
bindsym $mod+d exec $menu
for_window [title="^launcher$"] floating enable, resize set width 500 height 430, border none
...
TODO
- Most used entries first
- Cached entries
Contributing
Feature requests and bug reports are most welcome.
I'll accept patchsets fixing bugs or adding requested features.
NOTE: The preferred way to contribute is via SourceHut, tickets can be opened at https://todo.sr.ht/~f9/gyr
The GitLab releases & issues are kept for convenience, but merge requests are closed.
Changelog
Notable changes will be documented in the CHANGELOG file
License
BSD 2-Clause (c) 2020-2022 Namkhai B.
Dependencies
~6–17MB
~170K SLoC