second commit
This commit is contained in:
parent
797ae5366d
commit
330c86c465
6 changed files with 93 additions and 0 deletions
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
.task.mk
|
26
Containerfile
Normal file
26
Containerfile
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
FROM docker.io/library/archlinux:base-devel
|
||||||
|
|
||||||
|
LABEL com.github.containers.toolbox="true" \
|
||||||
|
name="daylinbox" \
|
||||||
|
version="base-devel" \
|
||||||
|
usage="This image is meant to be used by daylin" \
|
||||||
|
maintainer="Daylin Morgan <me@dayl.in>"
|
||||||
|
# summary="Base image for creating Arch Linux Toolbx containers" \
|
||||||
|
|
||||||
|
# Install extra packages
|
||||||
|
COPY extra-packages my-extra-packages /
|
||||||
|
RUN pacman -Syu --needed --noconfirm - < extra-packages
|
||||||
|
RUN pacman -Syu --needed --noconfirm - < my-extra-packages
|
||||||
|
RUN rm /extra-packages /my-extra-packages
|
||||||
|
|
||||||
|
# Enable man pages, enable progress bars
|
||||||
|
RUN sed -i -e 's/NoProgressBar/#NoProgressBar/' -e 's/NoExtract/#NoExtract/' /etc/pacman.conf
|
||||||
|
|
||||||
|
# Force reinstall of packages which have man pages (shouldn't redownload any that were just upgraded)
|
||||||
|
RUN mkdir -p /usr/share/man && pacman -Qo /usr/share/man | awk '{print $5}' | xargs pacman -S --noconfirm man-db
|
||||||
|
|
||||||
|
# Clean up cache
|
||||||
|
RUN yes | pacman -Scc
|
||||||
|
|
||||||
|
# Enable sudo permission for wheel users
|
||||||
|
RUN echo "%wheel ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/toolbox
|
5
Makefile
Normal file
5
Makefile
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
build: ## build the image!
|
||||||
|
podman build . -t daylinbox
|
||||||
|
|
||||||
|
-include .task.mk
|
||||||
|
$(if $(filter help,$(MAKECMDGOALS)),$(if $(wildcard .task.mk),,.task.mk: ; curl -fsSL https://raw.githubusercontent.com/daylinmorgan/task.mk/v2024.1001/task.mk -o .task.mk))
|
27
README.md
Normal file
27
README.md
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
# daylinbox
|
||||||
|
|
||||||
|
Container definition for use with [distrobox](https://github.com/89luca89/distrobox).
|
||||||
|
It's loosely based on the existing container defined [here](https://github.com/containers/toolbox/blob/dcd4c4382c912f98c60e7abccc3de7aa8f786bdf/images/arch/Containerfile).
|
||||||
|
|
||||||
|
To use ensure `podman` is installed.
|
||||||
|
Then build the image:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
make build
|
||||||
|
```
|
||||||
|
|
||||||
|
Then create and enter a distrobox:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
distrobox create -i daylinbox
|
||||||
|
distrobox enter daylinbox
|
||||||
|
```
|
||||||
|
|
||||||
|
`./extra-packages` was copied over from the original container build.
|
||||||
|
`./my-extra-packages` is the list of tools I want around in these containers.
|
||||||
|
|
||||||
|
## possible future improvements
|
||||||
|
|
||||||
|
- addition of `pixi`
|
||||||
|
- make microsoft build and host the image?
|
||||||
|
|
26
extra-packages
Normal file
26
extra-packages
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
bash-completion
|
||||||
|
diffutils
|
||||||
|
flatpak-xdg-utils
|
||||||
|
git
|
||||||
|
gnupg
|
||||||
|
keyutils
|
||||||
|
lsof
|
||||||
|
man-db
|
||||||
|
man-pages
|
||||||
|
mlocate
|
||||||
|
mtr
|
||||||
|
nss-mdns
|
||||||
|
openssh
|
||||||
|
pigz
|
||||||
|
procps-ng
|
||||||
|
rsync
|
||||||
|
tcpdump
|
||||||
|
time
|
||||||
|
traceroute
|
||||||
|
tree
|
||||||
|
unzip
|
||||||
|
vte-common
|
||||||
|
wget
|
||||||
|
words
|
||||||
|
xorg-xauth
|
||||||
|
zip
|
8
my-extra-packages
Normal file
8
my-extra-packages
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
python
|
||||||
|
neovim
|
||||||
|
fd
|
||||||
|
ripgrep
|
||||||
|
zoxide
|
||||||
|
fzf
|
||||||
|
eza
|
||||||
|
lazygit
|
Loading…
Reference in a new issue