Skip to content

Commit

Permalink
do I work?
Browse files Browse the repository at this point in the history
  • Loading branch information
detiber committed Dec 4, 2024
1 parent 7271b17 commit b29fc4d
Show file tree
Hide file tree
Showing 4 changed files with 136 additions and 20 deletions.
2 changes: 1 addition & 1 deletion .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -1 +1 @@
* @xynydev @fiftydinar
* @detiber
6 changes: 6 additions & 0 deletions files/system/etc/distrobox/distrobox.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
container_always_pull="1"
container_generate_entry=1
container_manager="podman"
container_name_default="ubuntu"
container_image_default="ghcr.io/ublue-os/ubuntu-toolbox:latest"
non_interactive="1"
33 changes: 33 additions & 0 deletions files/system/etc/distrobox/distrobox.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
[ubuntu]
image=ghcr.io/ublue-os/ubuntu-toolbox:latest
#additional_packages=" "
#export=" "
init=false
nvidia=true
pull=true
root=false
replace=true

# Add more distros and then use:
# distrobox assemble create --replace --file /etc/distrobox/distrobox.ini
# This will replace your distroboxes in place
# Tip: Use additional_packages as declarative config!
# See https://distrobox.privatedns.org/usage/distrobox-assemble/

#[fedora]
#image=ghcr.io/ublue-os/fedora-toolbox:latest
#additional_packages="ansible lynx chromium neofetch cmus"
#export="app chromium"
#init=false
#nvidia=true
#pull=true
#root=false
#replace=true

#[wolfi]
#image=ghcr.io/ublue-os/wolfi-toolbox:latest
#init=false
#nvidia=true
#pull=true
#root=false
#replace=true
115 changes: 96 additions & 19 deletions recipes/recipe.yml
Original file line number Diff line number Diff line change
@@ -1,24 +1,118 @@
# image will be published to ghcr.io/<user>/<name>
name: beardy-os
# description will be included in the image's metadata
description: This is my personal OS image.
description: The preferred u-blue based OS for bearded developers.

# the base image to build on top of (FROM) and the version tag to use
# TODO: investigate bazzite as a base instead?
base-image: ghcr.io/ublue-os/silverblue-main
image-version: 40 # latest is also supported if you want new updates ASAP
image-version: latest

# module configuration, executed in order
# you can include multiple instances of the same module
modules:
- type: akmods
base: main
install:
- openrgb
- v4l2loopback
- evdi
- kvmfr
- ryzen-smu
- zfs
- zenergy

- bling:
install:
- rpmfusion
- ublue-update
- 1password # TODO: switch to sysext for 1password: https://universal-blue.discourse.group/t/installing-1password-in-bluefin-a-better-way/5442/2, https://github.com/travier/fedora-sysexts
- dconf-update-service

- type: brew
brew-analytics: false
auto-update: true
auto-upgrade: true
nofile-limits: true

- type: chemzoi
repository: "https://github.com/detiber/dotfiles"
# branch: main
file-conflict-policy: skip # skip files that have diverged from the repo, can be set to "replace"
# run-every: 1d
# wait-after-boot: 5m
disable-init: true # disabled until configuration can be sorted out and repo updated
disable-update: true # disabled until configuration can be sorted out and repo updated
all-users: false # make users have to enable chezmoi manually
# init/update can be manually enabled for the current user with `systemctl enable --user chezmoi-init.service chezmoi-update.timer`
# init/update can be manually enabled for all users with `sudo systemctl enable --user chezmoi-init.service chezmoi-update.timer`
# enable lingering for a user with: `sudo loginctl enable-linger <username>`
# lingering will for a user's unit files to run at boot and continue running even when not logged in

- type: containerfile
snippets:
- LABEL org.opencontainers.image.source=https://github.com/detiber/beardy-os

- type: default-flatpaks
notify: true # Send notification after install/uninstall is finished (true/false)
system:
# If no repo information is specified, Flathub will be used by default
repo-url: https://dl.flathub.org/repo/flathub.flatpakrepo
repo-name: flathub
repo-title: "Flathub (system-wide)" # Optional; this sets the remote's user-facing name in graphical frontends like GNOME Software
install:
- com.valvesoftware.Steam
- com.github.tchx84.Flatseal
- com.discordapp.Discord
- com.spotify.Client
- org.chromium.Chromium
- org.chromium.Chromium.Codecs
- io.github.flattool.Warehouse
- app/io.missioncenter.MissionCenter
- app/io.github.dvlv.boxbuddyrs
- app/io.podman_desktop.PodmanDesktop
- app.devsuite.Pytxis
remove:
# - org.gnome.eog

- type: files
files:
- source: system
destination: / # copies files/system/* (* means everything inside it) into your image's root folder /

- type: fonts
fonts:
nerd-fonts:
- FiraCode
- Terminus
- Hack
- Symbols

- type: gschema-overrides


#gsettings set org.gnome.mutter experimental-features \"['variable-refresh-rate']\""

# Hardware acceleration with Intel (c.f. https://wiki.archlinux.org/title/Hardware_video_acceleration)
- type: rpm-ostree
# Need to remove this first otherwise it conflicts with intel-media-driver
remove:
- libva-intel-media-driver
- type: rpm-ostree
install:
- intel-media-driver
- libva-intel-media-driver
- igt-gpu-tools # To check GPU usage via sudo intel_gpu_top

- type: rpm-ostree
repos:
# - https://copr.fedorainfracloud.org/coprs/atim/starship/repo/fedora-%OS_VERSION%/atim-starship-fedora-%OS_VERSION%.repo
install:
- podman-compose
- libvirt
- qemu
- virt-manager
# - chromium
# - micro
# - starship
remove:
Expand All @@ -27,22 +121,5 @@ modules:
# - firefox
# - firefox-langpacks # also remove firefox dependency (not required for all packages, this is a special case)

- type: default-flatpaks
notify: true # Send notification after install/uninstall is finished (true/false)
system:
# If no repo information is specified, Flathub will be used by default
# repo-url: https://dl.flathub.org/repo/flathub.flatpakrepo
# repo-name: flathub
# repo-title: "Flathub (system-wide)" # Optional; this sets the remote's user-facing name in graphical frontends like GNOME Software
install:
# - org.mozilla.firefox
# - org.gnome.Loupe
# - one.ablaze.floorp//lightning # This is an example of flatpak which has multiple branches in selection (flatpak//branch).
# Flatpak runtimes are not supported (like org.winehq.Wine//stable-23.08),
# only normal flatpak applications are (like Floorp Lightning web browser in this example).
# Installing different branches of the same Flatpak is not supported.
remove:
# - org.gnome.eog

- type: signing # this sets up the proper policy & signing files for signed images to work fully

0 comments on commit b29fc4d

Please sign in to comment.