mirror of
https://github.com/donovanglover/nix-config.git
synced 2025-01-23 14:18:37 +01:00
Merge all common packages together
This commit puts all the common packages, that is, packages used with any desktop environment or window manager, in one file. Although this list is still a work in progress, this commit covers the majority of shared packages.
This commit is contained in:
parent
5e5edda8a6
commit
d0a0011ca1
67
packages/arch/common
Normal file
67
packages/arch/common
Normal file
@ -0,0 +1,67 @@
|
||||
rng-tools
|
||||
pacman-contrib
|
||||
xdg-user-dirs
|
||||
|
||||
ttf-hack
|
||||
ttf-fira-mono
|
||||
ttf-roboto
|
||||
ttf-dejavu
|
||||
ttf-liberation
|
||||
|
||||
noto-fonts
|
||||
noto-fonts-cjk
|
||||
noto-fonts-emoji
|
||||
noto-fonts-extra
|
||||
|
||||
tmux
|
||||
htop
|
||||
openssh
|
||||
|
||||
vim
|
||||
neovim
|
||||
|
||||
git
|
||||
diff-so-fancy
|
||||
tig
|
||||
|
||||
ripgrep
|
||||
fzf
|
||||
httpie
|
||||
fd
|
||||
exa
|
||||
|
||||
jq
|
||||
fdupes
|
||||
bind-tools
|
||||
|
||||
ncdu
|
||||
borg
|
||||
youtube-dl
|
||||
neofetch
|
||||
|
||||
pygmentize
|
||||
xclip
|
||||
|
||||
zip
|
||||
unzip
|
||||
p7zip
|
||||
unrar
|
||||
|
||||
texlive-most
|
||||
minted
|
||||
|
||||
firefox
|
||||
chromium
|
||||
firejail
|
||||
|
||||
nodejs
|
||||
npm
|
||||
yarn
|
||||
|
||||
crystal
|
||||
shards
|
||||
llvm
|
||||
|
||||
rustup
|
||||
|
||||
jdk10-openjdk
|
25
sh/055-vim
25
sh/055-vim
@ -1,25 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Vim is the standard text editor.
|
||||
#
|
||||
# https://wiki.archlinux.org/index.php/Vim
|
||||
|
||||
set -xe
|
||||
|
||||
sudo pacman -S vim
|
||||
|
||||
sudo pacman -S neovim
|
||||
|
||||
# Add the `undo` directory for regular vim
|
||||
mkdir -p ~/.vim/undo
|
||||
|
||||
# Install all vim plugins with `vim-plug`. Note that your
|
||||
# .vimrc should already have a section with the plugins that
|
||||
# you want to install.
|
||||
#
|
||||
# https://github.com/junegunn/vim-plug
|
||||
|
||||
curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
|
||||
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
|
||||
|
||||
vim +PlugInstall +qall
|
18
sh/091-fonts
18
sh/091-fonts
@ -1,18 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Note that before we'd use the `ttf-noto` package from the AUR,
|
||||
# although I doubt this is needed anymore with the official packages.
|
||||
#
|
||||
# https://wiki.archlinux.org/index.php/Fonts
|
||||
|
||||
set -xe
|
||||
|
||||
sudo pacman -S ttf-hack
|
||||
|
||||
sudo pacman -S ttf-fira-mono
|
||||
|
||||
sudo pacman -S ttf-roboto
|
||||
|
||||
sudo pacman -S ttf-dejavu ttf-liberation
|
||||
|
||||
sudo pacman -S noto-fonts noto-fonts-cjk noto-fonts-emoji noto-fonts-extra
|
@ -1,17 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# The `zip` package lets us zip files from the shell. The `unzip`,
|
||||
# `p7zip`, and `unrar` packages let us uncompress zip files, 7z
|
||||
# files, and rar files respectfully.
|
||||
#
|
||||
# https://wiki.archlinux.org/index.php/Archiving_and_compression
|
||||
|
||||
set -xe
|
||||
|
||||
sudo pacman -S zip
|
||||
|
||||
sudo pacman -S unzip
|
||||
|
||||
sudo pacman -S p7zip
|
||||
|
||||
sudo pacman -S unrar
|
@ -1,12 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Firejail is the standard sandboxing software.
|
||||
#
|
||||
# To run a program with firejail, simply use:
|
||||
# firejail <program_name>
|
||||
#
|
||||
# https://wiki.archlinux.org/index.php/Firejail
|
||||
|
||||
set -xe
|
||||
|
||||
pacman -S firejail
|
@ -1,13 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# The `rng-tools` package is used to increase entropy and make
|
||||
# /dev/random faster. This is useful for many programs, including
|
||||
# [SDDM](https://wiki.archlinux.org/index.php/SDDM).
|
||||
#
|
||||
# https://wiki.archlinux.org/index.php/Rng-tools
|
||||
|
||||
set -xe
|
||||
|
||||
sudo pacman -S rng-tools
|
||||
|
||||
sudo systemctl enable rngd.service
|
@ -1,17 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# XDG user dirs are a universal way to store files. They are used
|
||||
# by other programs to determine where to find and save files.
|
||||
#
|
||||
# The following directories are created with `xdg-user-dirs`:
|
||||
#
|
||||
# Desktop | Documents | Downloads | Music
|
||||
# Pictures | Public | Templates | Videos
|
||||
#
|
||||
# https://wiki.archlinux.org/index.php/Xdg_user_directories
|
||||
|
||||
set -xe
|
||||
|
||||
sudo pacman -S xdg-user-dirs
|
||||
|
||||
xdg-user-dirs-update
|
20
sh/103-git
20
sh/103-git
@ -1,20 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Git is the standard version control system.
|
||||
#
|
||||
# `diff-so-fancy` is used to show colorful diffs. These diffs
|
||||
# look much better than the default, so I highly recommend it.
|
||||
#
|
||||
# `tig` is used as a terminal-based GUI for the git commit tree.
|
||||
# It works really well and supports many vim keybindings out of
|
||||
# the box.
|
||||
#
|
||||
# https://wiki.archlinux.org/index.php/Git
|
||||
|
||||
set -xe
|
||||
|
||||
sudo pacman -S git
|
||||
|
||||
sudo pacman -S diff-so-fancy
|
||||
|
||||
sudo pacman -S tig
|
@ -1,9 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# `tmux` is the standard terminal multiplexer.
|
||||
#
|
||||
# https://wiki.archlinux.org/index.php/Tmux
|
||||
|
||||
set -xe
|
||||
|
||||
sudo pacman -S tmux
|
34
sh/106-cli
34
sh/106-cli
@ -1,34 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# This script installs an assortment of common CLI tools that I use
|
||||
# regularly enough to warrant inclusion.
|
||||
#
|
||||
# Note that you could also install `lolcat` if you really wanted to.
|
||||
#
|
||||
# https://github.com/junegunn/fzf
|
||||
# https://github.com/sharkdp/fd
|
||||
# https://github.com/BurntSushi/ripgrep
|
||||
# https://github.com/jakubroztocil/httpie
|
||||
# https://github.com/ogham/exa
|
||||
# https://github.com/stedolan/jq
|
||||
# https://github.com/borgbackup/borg
|
||||
# https://github.com/rg3/youtube-dl
|
||||
|
||||
set -xe
|
||||
|
||||
sudo pacman -S jq # JSON manipulation
|
||||
sudo pacman -S ripgrep # Faster than ag / ack / grep
|
||||
sudo pacman -S fzf # Fuzzy find anything
|
||||
sudo pacman -S httpie # Make HTTP requests
|
||||
sudo pacman -S fd # Faster alternative to find
|
||||
sudo pacman -S exa # Drop-in replacement for ls and tree
|
||||
|
||||
sudo pacman -S fdupes # Find duplicate files
|
||||
sudo pacman -S bind-tools # DNS tools like dig
|
||||
|
||||
sudo pacman -S ncdu # Ncurses du (disk usage)
|
||||
sudo pacman -S borg # Backup directories
|
||||
sudo pacman -S youtube-dl # View online videos in mpv
|
||||
sudo pacman -S neofetch # Bragging rights
|
||||
|
||||
sudo pacman -S pygmentize # Command line syntax highlighting (used for 'dog')
|
@ -1,39 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# OpenSSH is the standard SSH tool for both client side and
|
||||
# server side operations. By default SSH servers listen on TCP
|
||||
# port 22, but you should specify a high random number to prevent
|
||||
# brute force attempts.
|
||||
#
|
||||
# To connect to a server, use:
|
||||
# ssh -p port user@server-address
|
||||
#
|
||||
# Note that connecting via public-key authentication (i.e. SSH
|
||||
# keys) is the standard. You should disable password logins
|
||||
# entirely.
|
||||
#
|
||||
# To let other clients access your machine, enable the ssh
|
||||
# daemon service:
|
||||
# systemctl enable sshd.service
|
||||
#
|
||||
# If you let external computers access your machine through SSH,
|
||||
# then you need to make sure to configure `/etc/ssh/sshd_config`
|
||||
# appropriately.
|
||||
#
|
||||
# Note that `mosh` may also be a viable solution for certain
|
||||
# use cases (note that it must be used with a terminal multiplexer
|
||||
# like tmux for session history).
|
||||
#
|
||||
# If you want to SSH into your server with an internet hotspot that
|
||||
# blocks anything except ports 80 / 443, you can use a server
|
||||
# multiplexer like `sslh`.
|
||||
#
|
||||
# https://wiki.archlinux.org/index.php/Secure_Shell
|
||||
# https://wiki.archlinux.org/index.php/SSH_keys
|
||||
# https://wiki.archlinux.org/index.php/Port_knocking
|
||||
# https://mosh.org/
|
||||
# https://www.rutschle.net/tech/sslh/README.html
|
||||
|
||||
set -xe
|
||||
|
||||
sudo pacman -S openssh
|
@ -1,11 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# `pacman-contrib` is used for tools like `paccache`, which
|
||||
# allows us to get rid of older cached packages to save
|
||||
# disk space.
|
||||
#
|
||||
# https://wiki.archlinux.org/index.php/Pacman
|
||||
|
||||
set -xe
|
||||
|
||||
pacman -S pacman-contrib
|
@ -1,23 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# `texlive-most` is a meta package that has everything we need.
|
||||
# Before we'd pick and choose which packages to install, but this
|
||||
# doesn't really matter in the long term and having "most" of
|
||||
# texlive is good enough anyway.
|
||||
#
|
||||
# `minted` is used for syntax highlighting support. This is useful
|
||||
# when writing code blocks with La(TeX)
|
||||
#
|
||||
# `texstudio` is a nice IDE for some projects. If your project is
|
||||
# relatively small and you're using KDE, feel free to include it.
|
||||
# HiDPI is supported out of the box.
|
||||
#
|
||||
# https://wiki.archlinux.org/index.php/TeX_Live
|
||||
|
||||
set -xe
|
||||
|
||||
pacman -S texlive-most
|
||||
|
||||
pacman -S minted
|
||||
|
||||
pacman -S texstudio
|
@ -1,12 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Firefox is the standard web browser.
|
||||
#
|
||||
# Note that you should install fonts before you install Firefox,
|
||||
# as it requires a ttf variant.
|
||||
#
|
||||
# https://wiki.archlinux.org/index.php/Firefox
|
||||
|
||||
set -xe
|
||||
|
||||
pacman -S firefox
|
15
sh/803-inox
15
sh/803-inox
@ -1,15 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Inox is a patchset to provide a minimal Chromium-based browser.
|
||||
#
|
||||
# Note that if `inox-bin` isn't updated when the libraries it uses
|
||||
# are updated (e.g. icu) then the most future-proof workaround is
|
||||
# building it yourself with the `inox` package instead.
|
||||
#
|
||||
# `inox` should take around 3 hours to compile on a modern setup.
|
||||
#
|
||||
# https://github.com/gcarq/inox-patchset
|
||||
|
||||
set -xe
|
||||
|
||||
yay -S inox-bin
|
@ -1,27 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Node lets us write JavaScript code outside of the browser.
|
||||
#
|
||||
# Yarn is the preferred dependency manager, however, some programs
|
||||
# have npm hard-coded as a dependency, so we install that as well.
|
||||
#
|
||||
# We set the yarn prefix to /usr/local so libraries installed
|
||||
# globally with yarn are automatically in our $PATH.
|
||||
#
|
||||
# We enable emojis since our terminal (termite) supports them. A
|
||||
# nice addition for some added flair.
|
||||
#
|
||||
# https://wiki.archlinux.org/index.php/Node.js
|
||||
# https://yarnpkg.com/en/docs/cli/global
|
||||
|
||||
set -xe
|
||||
|
||||
sudo pacman -S nodejs
|
||||
|
||||
sudo pacman -S npm
|
||||
|
||||
sudo pacman -S yarn
|
||||
|
||||
yarn config set prefix /usr/local
|
||||
|
||||
yarn config set -- --emoji true
|
@ -1,21 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Crystal is a nice programming language that lets us use
|
||||
# the usability of Ruby with the performance of C.
|
||||
#
|
||||
# `shards` is the official dependency manager for Crystal.
|
||||
#
|
||||
# The low level virtual machine (llvm) is used to build
|
||||
# crystal directly from the source. This is useful when
|
||||
# we're making changes to the Crystal programming language
|
||||
# itself.
|
||||
#
|
||||
# https://wiki.archlinux.org/index.php/Crystal
|
||||
|
||||
set -xe
|
||||
|
||||
sudo pacman -S crystal
|
||||
|
||||
sudo pacman -S shards
|
||||
|
||||
sudo pacman -S llvm
|
@ -1,21 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Rust is a nice programming language that finds many errors
|
||||
# for us at compile time. This is useful for writing safe code.
|
||||
#
|
||||
# The `rustup` package is used over `rust` because this allows us
|
||||
# to have multiple rust versions at any given time and update them
|
||||
# as needed.
|
||||
#
|
||||
# There are 3 toolchains: stable, beta, and nightly. In this script
|
||||
# we install the stable toolchain and make it the default.
|
||||
#
|
||||
# https://wiki.archlinux.org/index.php/Rust
|
||||
|
||||
set -xe
|
||||
|
||||
sudo pacman -S rustup
|
||||
|
||||
rustup install stable
|
||||
|
||||
rustup default stable
|
@ -1,10 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Java is a programming language used in many programming contests.
|
||||
# This is arguably the only reason why we have it here.
|
||||
#
|
||||
# https://wiki.archlinux.org/index.php/Java
|
||||
|
||||
set -xe
|
||||
|
||||
sudo pacman -S jdk10-openjdk
|
Loading…
Reference in New Issue
Block a user