LARBS

Luke's Auto-Rice Bootstrapping Scripts: Installation Scripts for My Arch Linux Meta-Distribution

  • Owner: LukeSmithxyz/LARBS
  • Platform:
  • License:: GNU General Public License v3.0
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

Luke's Auto-Rice Bootstraping Scripts (LARBS)

Installation:

On an Arch based distribution as root, run the following:

curl -LO larbs.xyz/larbs.sh
sh larbs.sh

That's it.

What is LARBS?

LARBS is a script that autoinstalls and autoconfigures a fully-functioning
and minimal terminal-and-vim-based Arch Linux environment.

LARBS was originally intended to be run on a fresh install of Arch Linux, and
provides you with a fully configured diving-board for work or more
customization. But LARBS also works on already configured systems and other
Arch-based distros such as Manjaro, Antergos and Parabola (although Parabola,
which uses slightly different repositories might miss one or two minor
programs).

Customization

By default, LARBS uses the programs here in progs.csv and installs
my dotfiles repo (voidrice) here,
but you can easily change this by either modifying the default variables at the
beginning of the script or giving the script one of these options:

  • -r: custom dotfiles repository (URL)
  • -p: custom programs list/dependencies (local file or URL)
  • -a: a custom AUR helper (must be able to install with -S unless you
    change the relevant line in the script

The progs.csv list

LARBS will parse the given programs list and install all given programs. Note
that the programs file must be a three column .csv.

The first column is a "tag" that determines how the program is installed, ""
(blank) for the main repository, A for via the AUR or G if the program is a
git repository that is meant to be make && sudo make installed.

The second column is the name of the program in the repository, or the link to
the git repository, and the third comment is a description (should be a verb
phrase) that describes the program. During installation, LARBS will print out
this information in a grammatical sentence. It also doubles as documentation
for people who read the csv or who want to install my dotfiles manually.

Depending on your own build, you may want to tactically order the programs in
your programs file. LARBS will install from the top to the bottom.

If you include commas in your program descriptions, be sure to include double quotes around the whole description to ensure correct parsing.

The script itself

The script is broken up extensively into functions for easier readability and
trouble-shooting. Most everything should be self-explanatory.

The main work is done by the installationloop function, which iterates
through the programs file and determines based on the tag of each program,
which commands to run to install it. You can easily add new methods of
installations and tags as well.

Note that programs from the AUR can only be built by a non-root user. What
LARBS does to bypass this by default is to temporarily allow the newly created
user to use sudo without a password (so the user won't be prompted for a
password multiple times in installation). This is done ad-hocly, but
effectively with the newperms function. At the end of installation,
newperms removes those settings, giving the user the ability to run only
several basic sudo commands without a password (shutdown, reboot,
pacman -Syu).

Main metrics

Overview
Name With OwnerLukeSmithxyz/LARBS
Primary LanguageShell
Program languageShell (Language Count: 3)
Platform
License:GNU General Public License v3.0
所有者活动
Created At2017-09-25 01:11:58
Pushed At2025-03-28 18:11:57
Last Commit At2025-03-28 18:11:56
Release Count0
用户参与
Stargazers Count2.1k
Watchers Count68
Fork Count791
Commits Count786
Has Issues Enabled
Issues Count403
Issue Open Count8
Pull Requests Count102
Pull Requests Open Count3
Pull Requests Close Count73
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private