A container image for running Screen, a full-screen window manager that multiplexes a physical terminal between several processes. I mostly use it for connecting to a serial console.
- Image
- Tags
-
-
latest
-
- Supported architectures
-
-
amd64
(x86_64) -
arm64
(aarch64)
-
- User
-
The default user inside the container is named
user
. - Entrypoint
-
screen
- Labels
-
io.containers.autoupdate=registry
-
Enables automatic updates when using Podman and the fully-qualified image name.
First, ensure your user is in the dialout
group allowing access to serial devices.
sudo usermod -aG $USER dialout
ℹ️
|
You’ll have to log out and back in for the changes to take effect. |
To connect to a serial console using Screen from within this container, use the following Podman command.
Here, Screen connects to the serial console device /dev/ttyUSB0
with a Baud rate of 115,200 bps.
podman run \
--rm \
--group-add keep-groups \
--security-opt label=disable \
--device /dev/ttyUSB0 \
--name screen \
--init \
-it quay.io/jwillikers/screen:latest \
/dev/ttyUSB0 115200
ℹ️
|
Using the --init option prevents the terminal hanging after terminating the Screen session.
|
💡
|
Quit Screen by typing Ctrl+A then Ctrl+D. |
This project uses Buildah and Podman for building and testing the image.
A set of pre-commit checks are readily available to ensure your code is up-to-spec at the time it is committed.
Instructions for setting up a development environment, building the image, and testing the image follow.
These instructions are intended for users of Fedora Silverblue, where the packages buildah
, git
, and podman
are already available.
Moreover, I use the fish shell.
-
Install the fish shell.
sudo rpm-ostree install fish
-
Reboot to finish the installation.
systemctl reboot
-
Clone this repository.
git -C ~/Projects clone git@github.com:jwillikers/screen-image.git
-
Install pre-commit.
pip install pre-commit
-
Change into the project directory.
cd ~/Projects/screen-image
-
Install pre-commit’s Git hooks.
pre-commit install
-
Run the shell script to build the image.
buildah unshare ~/Projects/screen-image/build.fish
-
Test the image with the
test.fish
shell script.~/Projects/screen-image/test.fish
Contributions in the form of issues, feedback, and even pull requests are welcome. Make sure to adhere to the project’s Code of Conduct.
This project is built on the hard work of countless open source contributors. Several of these projects are enumerated below.
Refer to the project’s Code of Conduct for details.
This repository is licensed under the GPLv3, a copy of which is provided in the license file.
© 2021 Jordan Williams