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