Yup helps you install packages with ease on Arch Linux
Features
-
Searching with
yup [search-terms]
returns most accurate results -
Uses ncurses to display search results. This allows for mouse interaction in the terminal and easier navigation.
-
Don't want to use ncurses? Use
yup -n
to use non-ncurses mode -
Want to search the AUR exclusively? Use
yup -a
-
Like yay, type
yup
to run a system upgrade. -
An easy to use config file located at
~/.config/yup/config.json
in JSON format.
- Want to see which packages are cluttering up your system? Run
yup -Qos
to get a list ordered package size.
Configuration
- Config file found at
~/.config/yup/config.json
. - The config file has the following options:
{ SortMode: "closest"|"none", # changes how results are sorted (more to come) Ncurses: bool, # Whether to default to ncurses or not (override by -n) Update: bool, # Whether to update the pacman repos before every sync command PrintPkg: bool, # Whether to print the PKGBUILD before install (for AUR) AskPkg: bool, # Whether to ask to edit PKGBUILD before install (only if PrintPkg is true) AskRedo: bool, # Whether to ask if you want to reselect packages before install SilentUpdate: bool, # Whether you want to be asked to edit PKGBUILD during system update (overrides PrintPkg) PacmanLimit: int, # The number of packages parsed from pacman to be sorted and searched AurLimit: int, # The number of packages parsed from the AUR to be sorted and searched VimKeybindings: bool, # Enabling Vim keybindings (j and k keys to go up and down) }
Usage
yup Updates AUR and pacman packages (Like -Syu)
yup <package(s)> Searches for that packages and provides an install dialogue
Operations:
yup {-h --help}
yup {-V --version}
yup {-D --database} <options> <package(s)>
yup {-F --files} <options> <package(s)>
yup {-Q --query} <options> <package(s)>
yup {-R --remove} <options> <package(s)>
yup {-S --sync} <options> <package(s)>
yup {-T --deptest} <options> <package(s)>
yup {-U --upgrade} <options> <file(s)>
Custom operations:
yup -c Cleans cache and unused dependencies
yup -C Cleans AUR cache only
yup -a [package(s)] Operates on the AUR exclusively
yup -n [package(s)] Runs in non-ncurses mode
yup -Y <Yupfile> Install packages from a Yupfile
yup -Qos Orders installed packages by install size
Differences between yay or trizen
-
Yup gives you the most accurate results first. As seen in the example above, yup sorts the results to bring the most accurate to the start.
-
Yupfiles
are small files that allow you to batch install packages with a single command. Here's an example Yupfile -
Yup uses ncurses. This allows users to both scroll while not displacing the bottom bar and easily navigate to certain results using more natural forms of user input.
-
Yup has an easy config file seperate to that of pacman's. This allows it to be more customisable from the get go.
-
Yup has both
yup -c
(for clearing all package cache) and yupyup -C
(for clearing yup's cache only). -
Yup allows you to disable ncurses mode (to normal terminal output) using
yup -n
temporarily or permanently by changing a value in the config file. -
In the search menu, yup allows you to remove an installed package instantly using the
R
hotkey. -
After selecting packages to install, you can revise your decision if you made a mistake.
-
Yup will soon allow you to disable any of the dialogue during install using the config menu.
Installing
From the AUR
git clone https://aur.archlinux.org/yup.git
cd yup
makepkg -si
From the AUR (binary)
git clone https://aur.archlinux.org/yup-bin.git
cd yup-bin
makepkg -si
From source
Make sure you have go>=1.12
, ncurses
and make
.
- Clone the repo
- Run
make
- Install with
make install
Completions not working on zsh
- You'll need to add
compaudit && compinit
to the bottom of your .zshrc
Credits
Copyright 2019 Eric Moynihan