For now? I'm experimenting on an old concept.
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

meta: add devcontainer configurations for Ubuntu and Fedora environments, untested.

+133 -29
-29
.devcontainer/devcontainer.json
··· 1 - // For format details, see https://aka.ms/devcontainer.json. For config options, see the 2 - // README at: https://github.com/devcontainers/templates/tree/main/src/ubuntu 3 - { 4 - "name": "Lumina devenv", 5 - "build": { 6 - "dockerfile": "../env.Dockerfile" 7 - }, 8 - // "features": { 9 - // ghcr.io/devcontainers/features/docker-in-docker:2": {}, 10 - // "ghcr.io/devcontainers-extra/features/mise:1": {} 11 - // }, 12 - // Features to add to the dev container. More info: https://containers.dev/features. 13 - // "features": {}, 14 - // Use 'forwardPorts' to make a list of ports inside the container available locally. 15 - "forwardPorts": [8085], 16 - // Use 'postCreateCommand' to run commands after the container is created. 17 - "postCreateCommand": [ 18 - "mise trust", 19 - "mise use -g usage", 20 - "mise install", 21 - "mkdir -p ~/.local/share/bash-completion/completions", 22 - "mise completion bash --include-bash-completion-lib > ~/.local/share/bash-completion/completions/mise" 23 - ], 24 - "postStartCommand": ["git remote set-url origin ssh://git@git.strawmelonjuice.com/strawmelonjuice/Lumina.git"] 25 - // Configure tool-specific properties. 26 - // "customizations": {}, 27 - // Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root. 28 - // "remoteUser": "root" 29 - }
+42
.devcontainer/fedora_devenv/devcontainer.Dockerfile
··· 1 + FROM registry.fedoraproject.org/fedora-minimal:latest 2 + SHELL ["/bin/bash", "-o", "pipefail", "-c"] 3 + 4 + # Control these if you need to change the values in the 'devcontainer.json' 5 + # file in the directory. They have matching values. 6 + ARG USERNAME=vscode 7 + ARG USERID=1000 8 + ARG GROUPID=1000 9 + 10 + # Setup the user, basic packages, and python environment. 11 + # Try to keep everything system setup here. 12 + RUN set -ex; \ 13 + dnf5 update -y; \ 14 + dnf5 install --setopt=install_weak_deps=False -y \ 15 + python3-devel python3-wheel tar gcc make git wget which \ 16 + cmake clang++ lldb curl vim procps-ng openssh-clients; \ 17 + \ 18 + python3 -m ensurepip --upgrade; \ 19 + python3 -m pip install --no-cache-dir --upgrade pip; \ 20 + \ 21 + groupadd --gid ${GROUPID} ${USERNAME}; \ 22 + useradd --gid ${GROUPID} --uid ${USERID} -p ${USERNAME} \ 23 + -s /bin/bash -m ${USERNAME}; \ 24 + 25 + ENV MISE_DATA_DIR="/mise" 26 + ENV MISE_CONFIG_DIR="/mise" 27 + ENV MISE_CACHE_DIR="/mise/cache" 28 + ENV MISE_INSTALL_PATH="/usr/local/bin/mise" 29 + ENV PATH="/mise/shims:$PATH" 30 + RUN curl https://mise.run | sh 31 + 32 + # Cleanup the installation and other packages here. 33 + # No more package installation from DNF should happen after this point. 34 + RUN set -ex; \ 35 + dnf5 clean all -y; \ 36 + rm -rf /var/cache/yum/* /var/cache/dnf/* /usr/share/doc/*; 37 + 38 + # Ensure that the container is running the user that was created and the 39 + # workspace matyches what we expect by default. 40 + ENV PYTHONDONTWRITEBYTECODE=1 41 + WORKDIR /home/${USERNAME} 42 + USER ${USERNAME}
+58
.devcontainer/fedora_devenv/devcontainer.json
··· 1 + // Based on https://github.com/danweinerdev/fedora-devcontainer-template/ 2 + { 3 + "containerUser": "vscode", 4 + "remoteUser": "vscode", 5 + "mounts": [ 6 + ], 7 + "customizations": { 8 + "vscode": { 9 + "extensions": [ 10 + "EditorConfig.EditorConfig", 11 + "ms-vscode.cpptools-themes", 12 + "twxs.cmake", 13 + "ms-vscode.cmake-tools" 14 + ], 15 + "settings": { 16 + "files.exclude": { 17 + "**/.classpath": true, 18 + "**/.DS_Store": true, 19 + "**/.factorypath": true, 20 + "**/.git": true, 21 + "**/.project": true, 22 + "**/.settings": true, 23 + "**/*.js": { 24 + "when": "$(basename).ts" 25 + }, 26 + "**/*.js.map": true 27 + }, 28 + "telemetry.telemetryLevel": "off" 29 + } 30 + } 31 + }, 32 + "features": {}, 33 + "name": "Lumina Fedora-based devenv", 34 + "build": { 35 + "dockerfile": "./devcontainer.Dockerfile" 36 + }, 37 + // "features": { 38 + // ghcr.io/devcontainers/features/docker-in-docker:2": {}, 39 + // "ghcr.io/devcontainers-extra/features/mise:1": {} 40 + // }, 41 + // Features to add to the dev container. More info: https://containers.dev/features. 42 + // "features": {}, 43 + // Use 'forwardPorts' to make a list of ports inside the container available locally. 44 + "forwardPorts": [8085], 45 + // Use 'postCreateCommand' to run commands after the container is created. 46 + "postCreateCommand": [ 47 + "mise trust", 48 + "mise use -g usage", 49 + "mise install", 50 + "mkdir -p ~/.local/share/bash-completion/completions", 51 + "mise completion bash --include-bash-completion-lib > ~/.local/share/bash-completion/completions/mise" 52 + ], 53 + "postStartCommand": ["git remote set-url origin ssh://git@codeberg.org/strawmelonjuice/Lumina.git"] 54 + // Configure tool-specific properties. 55 + // "customizations": {}, 56 + // Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root. 57 + // "remoteUser": "root" 58 + }
+33
.devcontainer/ubuntu devenv/devcontainer.json
··· 1 + // The Ubuntu-based devenv is lighter tested than the fedora based one. 2 + // But in combination with microsoft's stuff, including github codespaces, it's the best performant option. Probably. 3 + // 4 + // That said, you'll have the problem with docker vs. podman. That's yours to deal with. :P (just replace podman in the local devel prep task and most cases should be fine) 5 + 6 + { 7 + "name": "Lumina Ubuntu-based devenv", 8 + "image": "ghcr.io/prulloac/base:ubuntu-24.04", 9 + 10 + // ๐Ÿ‘‡ Features to add to the Dev Container. More info: https://containers.dev/implementors/features. 11 + "features": { 12 + "ghcr.io/devcontainers/features/docker-in-docker:2": {}, 13 + "ghcr.io/devcontainers-extra/features/mise:1": {}, 14 + "ghcr.io/devcontainers/features/rust": { 15 + "version": "latest", 16 + "profile": "default" 17 + } 18 + }, 19 + 20 + // ๐Ÿ‘‡ Use 'forwardPorts' to make a list of ports inside the container available locally. 21 + // "forwardPorts": [], 22 + 23 + "postCreateCommand": [ 24 + "mise trust", 25 + "mise use -g usage", 26 + "mise install", 27 + "mkdir -p ~/.local/share/bash-completion/completions", 28 + "mise completion bash --include-bash-completion-lib > ~/.local/share/bash-completion/completions/mise" 29 + ], 30 + "postStartCommand": ["git remote set-url origin ssh://git@codeberg.org/strawmelonjuice/Lumina.git"] 31 + // ๐Ÿ‘‡ Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root. 32 + // "remoteUser": "root" 33 + }