Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
84 changes: 31 additions & 53 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,61 +1,39 @@
FROM docker.io/library/archlinux:latest AS arch
FROM docker.io/cachyos/cachyos-v3:latest AS arch

# Initialization
RUN sed -i 's/#Color/Color/g' /etc/pacman.conf && \
printf "[multilib]\nInclude = /etc/pacman.d/mirrorlist\n" | tee -a /etc/pacman.conf && \
sed -i 's/#MAKEFLAGS="-j2"/MAKEFLAGS="-j$(nproc)"/g' /etc/makepkg.conf && \
pacman -Syu \
# Base Tools
base-devel wget git nano htop \
# Desktop Environment
xorg-server plasma-desktop xdg-desktop-portal-kde vulkan-nouveau lib32-vulkan-nouveau vulkan-tools fuse3 kwin-x11 \
# Audio
pulseaudio plasma-pa kde-gtk-config pkg-config \
# GUI Apps
firefox discover konsole dolphin kate \
flatpak steam lutris \
prismlauncher jre17-openjdk jre21-openjdk \
# Dependencies
cargo rye \
--noconfirm && \
useradd -m --shell=/bin/bash build && usermod -L build && \
echo "build ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers && \
echo "root ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
COPY ./home/pacman.conf /etc/pacman.conf

# Install DCSPkg
RUN cargo install dcspkg --root /usr
RUN pacman-key --init && \
pacman-key --populate archlinux

# Add yay and install AUR packages
USER build
WORKDIR /home/build
RUN git clone https://aur.archlinux.org/yay-bin.git --single-branch && \
cd yay-bin && \
makepkg -si --noconfirm && \
cd .. && \
rm -drf yay-bin
# RUN yay --noconfirm -S PKGNAME
USER root
WORKDIR /
RUN pacman -Sy --noconfirm \
cachyos-keyring \
cachyos-mirrorlist

RUN sed -i 's/#MAKEFLAGS="-j2"/MAKEFLAGS="-j$(nproc)"/g' /etc/makepkg.conf && \
pacman -Syu --noconfirm \
base-devel wget git nano htop \
xorg-server plasma-desktop xdg-desktop-portal-kde fuse3 vulkan-tools kwin-x11 \
pulseaudio plasma-pa kde-gtk-config \
firefox discover konsole dolphin kate \
flatpak steam lutris yay \
prismlauncher jre21-openjdk proton-cachyos && \
pacman -S --noconfirm rust && \
cargo install dcspkg --root /usr && \
pacman -Rns --noconfirm rust && \
rm -rf \
~/.cache/yay/* \
/tmp/* /var/cache/pacman/* \
/var/lib/pacman/sync/* \
/root/.cargo \
/usr/share/man/* \
/usr/share/doc/* \
/usr/share/gtk-doc/* && \
echo "ALL ALL=(ALL:ALL) NOPASSWD: ALL" > /etc/sudoers.d/acc && \
chmod 0440 /etc/sudoers.d/acc

# Create home directory
RUN mkdir -p /home/fng
WORKDIR /home/fng
COPY home ./
# Install DCSLauncher
RUN git clone https://github.com/UWCS/dcslauncher.git
# Install FNG-Admin Client
RUN mkdir -p fng-admin/client && cd fng-admin/client && \
python -m venv .venv && \
.venv/bin/python -m pip install https://github.com/UWCS/fng-admin/releases/download/AAAAAUUGGGGGGGHHHHH/client-0.1.0-py3-none-any.whl
WORKDIR /
RUN git clone --depth=1 https://github.com/UWCS/dcslauncher.git

# Cleanup
# We do this last because it'll only apply to updates the user makes going forward. We don't want to optimize for the build host's environment.
RUN sed -i 's/-march=x86-64 -mtune=generic/-march=native -mtune=native/g' /etc/makepkg.conf && \
userdel -r build && \
rm -drf /home/build && \
sed -i '/build ALL=(ALL) NOPASSWD: ALL/d' /etc/sudoers && \
sed -i '/root ALL=(ALL) NOPASSWD: ALL/d' /etc/sudoers && \
rm -rf \
/tmp/* \
/var/cache/pacman/pkg/*
RUN sed -i 's/-march=x86-64 -mtune=generic/-march=native -mtune=native/g' /etc/makepkg.conf
11 changes: 10 additions & 1 deletion builddev.sh
Original file line number Diff line number Diff line change
@@ -1,2 +1,11 @@
#!/bin/bash
podman build -t fng:dev .

./local-registry.sh

podman build -t localhost:5000/fng:dev .

podman push --tls-verify=false localhost:5000/fng:dev

echo "Build and push complete."

podman stop local-registry
Empty file removed home/.bashrc
Empty file.
17 changes: 0 additions & 17 deletions home/.config/Trolltech.conf

This file was deleted.

6 changes: 0 additions & 6 deletions home/.config/autostart/fng-admin-client.desktop

This file was deleted.

6 changes: 0 additions & 6 deletions home/.config/autostart/pulseaudio.desktop

This file was deleted.

Binary file removed home/.config/dconf/user
Binary file not shown.
28 changes: 0 additions & 28 deletions home/.config/gtk-3.0/assets/close-active.svg

This file was deleted.

28 changes: 0 additions & 28 deletions home/.config/gtk-3.0/assets/close-backdrop-active.svg

This file was deleted.

28 changes: 0 additions & 28 deletions home/.config/gtk-3.0/assets/close-backdrop-hover.svg

This file was deleted.

22 changes: 0 additions & 22 deletions home/.config/gtk-3.0/assets/close-backdrop-normal.svg

This file was deleted.

28 changes: 0 additions & 28 deletions home/.config/gtk-3.0/assets/close-hover.svg

This file was deleted.

22 changes: 0 additions & 22 deletions home/.config/gtk-3.0/assets/close-normal.svg

This file was deleted.

27 changes: 0 additions & 27 deletions home/.config/gtk-3.0/assets/maximize-active.svg

This file was deleted.

27 changes: 0 additions & 27 deletions home/.config/gtk-3.0/assets/maximize-backdrop-active.svg

This file was deleted.

27 changes: 0 additions & 27 deletions home/.config/gtk-3.0/assets/maximize-backdrop-hover.svg

This file was deleted.

Loading