• Stars
    star
    1,985
  • Rank 23,343 (Top 0.5 %)
  • Language
    Shell
  • License
    GNU General Publi...
  • Created about 7 years ago
  • Updated 8 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

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

Luke's Auto-Rice Bootstrapping 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 can be run on a fresh install of Arch or Artix Linux, and provides you with a fully configured diving-board for work or more customization.

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 column 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 and 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 extensively divided 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).

More Repositories

1

voidrice

My dotfiles (deployed by LARBS)
Shell
4,189
star
2

mutt-wizard

A system for automatically configuring mutt and isync with a simple interface and safe passwords
Shell
2,305
star
3

based.cooking

A simple culinary website.
CSS
2,148
star
4

st

Luke's fork of the suckless simple terminal (st) with vim bindings and Xresource compatibility.
C
1,591
star
5

emailwiz

Script that installs/configures a Dovecot, Postfix, Spam Assassin, OpenDKIM Debian web server
Shell
1,527
star
6

dwm

Luke's build of dwm
C
777
star
7

dwmblocks

My status bar: my build of the modular dwmblocks
C
411
star
8

landchad

Landchad.net Website Tutorial Page
CSS
353
star
9

lb

Blog & RSS system in less than 100 lines of shell script
Shell
282
star
10

latex-templates

My LaTeX templates, bibliography file, etc.
TeX
208
star
11

lugo

Luke's Hugo Theme
HTML
157
star
12

dmenu

dmenu setup for LARBS
C
145
star
13

shadowchat

A simple Monero (XMR) superchat donation system in Go
Go
122
star
14

vul

Latin Vulgate Bible on the Command Line
Awk
107
star
15

md-website-cv

A system for CVs/resumes and websites based on markdown files
HTML
96
star
16

etc

Random files that could be of interest
83
star
17

grb

A cli-accessible Greek Bible with the Septuagint, SBL and Apocrypha
Awk
76
star
18

surf

Luke's build of the surf web browser
C
65
star
19

shortcut-sync

Luke's Scripts for bash, ranger and qutebrowser synchronization
Shell
59
star
20

vimling

Small vim scripts for writing IPA and other special characters
Vim Script
49
star
21

critique-of-reason

Term paper on Rationality
TeX
35
star
22

corpus-latinum

Luke's Latin Tagger and (under construction) Corpus
Python
26
star
23

go-webring

Go
25
star
24

scroll

Minor personal tweaks to suckless's scroll (for st)
C
24
star
25

syntax-without-syntax

Qualifying paper on how word orders are driven by prosodic parameters
TeX
18
star
26

scope-without-syntax

Quantifier scope ambiguities are derived entirely from pragmatic assumptions, implemented in Game Theory.
TeX
15
star