diff --git a/.forgejo/workflows/os.yml b/.forgejo/workflows/os.yml deleted file mode 100644 index 688a6d9..0000000 --- a/.forgejo/workflows/os.yml +++ /dev/null @@ -1,71 +0,0 @@ -name: os - -on: - schedule: - - cron: '0 5 8,18,28 * *' - push: - paths: - - 'Dockerfile' - - 'etc/**' - - 'usr/**' - - 'repo/**' - - '.forgejo/workflows/os.yml' - - 'buildinstallxfce.sh' - - 'buildinstallxfceaddons.sh' - workflow_dispatch: - -env: - REGISTRY: forge.pc-rytteren.dk - IMAGE_NAME: ${{ github.repository }} - -jobs: - build: - runs-on: almalinux-10 - permissions: - contents: read - packages: write - - steps: - - - name: Get current date - id: date - run: echo "date=$(date +'%Y%m%d')" >> $FORGEJO_OUTPUT - - - name: Checkout repository - uses: actions/checkout@v4 - - - name: Extract Docker metadata - id: meta - uses: docker/metadata-action@v5 - with: - images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} - # Vi konstruerer tags her med branch-navnet som præfiks - tags: | - type=ref,event=branch - type=raw,value=latest,enable={{is_default_branch}} - type=raw,value=${{ github.ref_name }} - type=raw,value=${{ github.ref_name }}-10 - type=raw,value=${{ github.ref_name }}-10.${{ steps.date.outputs.date }} - - - name: Log into Forgejo Container Registry - if: github.event_name != 'pull_request' - run: | - buildah login -u ${{ github.actor }} -p ${{ secrets.PACKAGE_TOKEN }} ${{ env.REGISTRY }} - - - name: Build image with Buildah - id: build-image - run: | - # Vi bygger med 'raw-img' lokalt - buildah bud \ - --label "org.opencontainers.image.source=https://pc-rytteren.dk/forge/${{ github.repository }}" \ - -t raw-img . - - - name: Push to Forgejo Container Registry - if: github.event_name != 'pull_request' - run: | - for tag in $(echo "${{ steps.meta.outputs.tags }}"); do - echo "Tagging and pushing: $tag" - buildah tag raw-img "$tag" - buildah push "$tag" - done - diff --git a/Dockerfile b/Dockerfile index e7fe801..6ec021b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,35 +1,16 @@ FROM quay.io/almalinuxorg/atomic-desktop-kde:10 -RUN dnf update -y - # This may be necessary for the speakers and internal microphone RUN dnf install -y alsa-sof-firmware RUN dnf install --nogpgcheck -y https://mirrors.rpmfusion.org/free/el/rpmfusion-free-release-$(rpm -E %rhel).noarch.rpm https://mirrors.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-$(rpm -E %rhel).noarch.rpm -RUN dnf config-manager --add-repo https://copr.fedorainfracloud.org/coprs/g/SonicDE/SonicDE-EL10/repo/rhel+epel-10/group_SonicDE-SonicDE-EL10-rhel+epel-10.repo -y +RUN dnf config-manager --add-repo https://copr.fedorainfracloud.org/coprs/andersrh/sonicDE/repo/rhel+epel-10/andersrh-sonicDE-rhel+epel-10.repo -y RUN dnf config-manager --add-repo https://copr.fedorainfracloud.org/coprs/g/xlibre/xlibre-xserver/repo/rhel+epel-10/group_xlibre-xlibre-xserver-rhel+epel-10.repo -y -# This may be necessary for the speakers and internal microphone -RUN dnf install -y alsa-sof-firmware +RUN dnf install sonic-workspace-x11 sonic-win sonic-interface-libraries sonic-workspace --allowerasing -y -RUN dnf install xorg-x11-xinit xkbcomp xinput xlibre-xserver-Xorg xlibre-xserver-common xlibre-xf86-input-libinput cage weston xrandr -y - -RUN dnf install --allowerasing -y \ - sonic-workspace \ - sonic-workspace-libs \ - sonic-workspace-common \ - sonic-workspace-x11 \ - sonic-win \ - sonic-desktop-interface \ - sonic-interface-libraries - -RUN dnf install --allowerasing -y sonic-keybind-daemon sonic-frameworks-windowsystem sonic-system-info sonic-screen sonic-screen-library sonic-sysguard-library - -RUN dnf remove -y sddm && \ - dnf install --allowerasing -y sonic-login-manager - -RUN dnf install -y fish distrobox nvtop intel-media-driver libva-intel-driver htop firefox +RUN dnf install -y fish distrobox nvtop intel-media-driver libva-intel-driver htop # Remove plocate to avoid updatedb going crazy with scanning the file system once a day RUN dnf remove -y plocate @@ -55,6 +36,8 @@ RUN dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docke RUN rm -f /usr/lib64/libopenh264.so.2.4.1 /usr/lib64/libopenh264.so.7 RUN rpm -Uvh --nodeps https://codecs.fedoraproject.org/openh264/42/x86_64/Packages/o/openh264-2.5.1-1.fc42.x86_64.rpm https://codecs.fedoraproject.org/openh264/42/x86_64/Packages/m/mozilla-openh264-2.5.1-1.fc42.x86_64.rpm +RUN dnf install xlibre-xserver-Xorg xlibre-xf86-input-libinput xinput + # Install VLC RUN dnf install vlc vlc-plugins-freeworld vlc-plugin-pipewire -y @@ -65,4 +48,4 @@ COPY etc /etc RUN cd /usr/bin && wget https://raw.githubusercontent.com/CachyOS/CachyOS-Settings/refs/heads/master/usr/bin/kerver && chmod +x kerver RUN rm -rf /tmp/* /var/* && mkdir -p /var/tmp && chmod -R 1777 /var/tmp && \ - bootc container lint + bootc container lint \ No newline at end of file diff --git a/etc/X11/xorg.conf.d/00-keyboard.conf b/etc/X11/xorg.conf.d/00-keyboard.conf deleted file mode 100644 index 146d931..0000000 --- a/etc/X11/xorg.conf.d/00-keyboard.conf +++ /dev/null @@ -1,10 +0,0 @@ -# Written by systemd-localed(8), read by systemd-localed and Xorg. It's -# probably wise not to edit this file manually. Use localectl(1) to -# update this file. -Section "InputClass" - Identifier "system-keyboard" - MatchIsKeyboard "on" - Option "XkbLayout" "dk" - Option "XkbModel" "pc105" - Option "XkbOptions" "terminate:ctrl_alt_bksp" -EndSection diff --git a/etc/X11/xorg.conf.d/20-modesetting.conf b/etc/X11/xorg.conf.d/20-modesetting.conf deleted file mode 100644 index 332e165..0000000 --- a/etc/X11/xorg.conf.d/20-modesetting.conf +++ /dev/null @@ -1,7 +0,0 @@ -Section "Device" - Identifier "Intel Graphics" - Driver "modesetting" - Option "ShadowFB" "false" # you don't need on recent hardware - Option "Atomic" "true" #only effective on Xlibre, or Xorg-git with a special patch - Option "TearFree" "false" # We will be using compositor, so TearFree (extra buffer) in the driver is not necessary -EndSection diff --git a/etc/X11/xorg.conf.d/90-touchpad-tap.conf b/etc/X11/xorg.conf.d/90-touchpad-tap.conf deleted file mode 100644 index 9000db3..0000000 --- a/etc/X11/xorg.conf.d/90-touchpad-tap.conf +++ /dev/null @@ -1,19 +0,0 @@ -Section "InputClass" - Identifier "Touchpad Tap" - # Matcher alle touchpads der bruger libinput - MatchIsTouchpad "on" - MatchDevicePath "/dev/input/event*" - Driver "libinput" - - # Korrigerer hastigheden til 2x (til 4K / 200% skalering) - #Option "TransformationMatrix" "5 0 0 0 5 0 0 0 2" - - # Bruger den ergonomiske 'adaptive' profil (1 0 er Adaptive) - #Option "AccelProfile" "adaptive" - - # Holder grundhastigheden neutral (0.0) - #Option "AccelSpeed" "0" - - # Valgfrit: Slå tap-to-click til, hvis du foretrækker det - Option "Tapping" "on" -EndSection diff --git a/etc/chromium/chromium.conf b/etc/chromium/chromium.conf new file mode 100644 index 0000000..c628808 --- /dev/null +++ b/etc/chromium/chromium.conf @@ -0,0 +1,31 @@ +CHROMIUM_FLAGS="--use-cmd-decoder=passthrough +--enable-features=VaapiIgnoreDriverChecks,VaapiLowPowerEncoderGen9x,Vp9kSVCHWDecoding,VaapiVp9kSVCHWEncoding,DesktopScreenshots,SharingDesktopScreenshotsEdit,WebUIDarkMode,PlatformHEVCDecoderSupport,PlatformHEVCEncoderSupport,PartialRaster,CanvasOopRasterization,AcceleratedVideoDecoder,AcceleratedVideoEncoder,AcceleratedVideoDecodeLinuxGL,AcceleratedVideoDecodeLinuxZeroCopyGL,UseMultiPlaneFormatForHardwareVideo,Vulkan,DefaultANGLEVulkan,VulkanFromANGLE +--ignore-gpu-blocklist +--disable-gpu-driver-bug-workaround +--disable-features=ExtensionManifestV2Unsupported,ExtensionManifestV2Disabled --oauth2-client-id=77185425430.apps.googleusercontent.com --oauth2-client-secret=OTJgUOQcT7lO7GsGZq2G4IlT +--disk-cache-dir=/run/user/1000/chromium-cache +--disk-cache-size=419430400 +--enable-chrome-browser-cloud-management +--show-component-extension-options +--enable-gpu-rasterization +--media-router=0 +--enable-remote-extensions +--video-capture-use-gpu-memory-buffer +--enable-video-player-chromecast-support +--enable-pixel-canvas-recording +--enable-native-gpu-memory-buffers +--enable-zero-copy +--enable-partial-raster +--enable-parallel-downloading +--enable-quic +--enable-lazy-image-loading +--enable-lcd-text +--enable-oop-rasterization +--canvas-oop-rasterization +--enable-gpu-compositing +--enable-accelerated-mjpeg-decode +--enable-font-antialiasing +--enable-accelerated-2d-canvas +--enable-gpu-memory-buffer-video-frames +--enable-gpu-memory-buffer-compositor-resources +--enable-hardware-overlays" \ No newline at end of file