diff --git a/.github/workflows/build-fedora-toolbox.yml b/.github/workflows/build-fedora-toolbox.yml index f11a94283c2..2c37fb59e0c 100644 --- a/.github/workflows/build-fedora-toolbox.yml +++ b/.github/workflows/build-fedora-toolbox.yml @@ -27,7 +27,7 @@ jobs: # Build metadata - name: Image Metadata - uses: docker/metadata-action@v4 + uses: docker/metadata-action@v5 id: meta with: images: | @@ -73,7 +73,7 @@ jobs: --disable-content-trust - name: Login to GitHub Container Registry - uses: docker/login-action@v2 + uses: docker/login-action@v3 if: github.event_name != 'pull_request' with: registry: ghcr.io diff --git a/.github/workflows/build-ubuntu-toolbox.yml b/.github/workflows/build-ubuntu-toolbox.yml index cca261f66f8..9cb8bf1efb9 100644 --- a/.github/workflows/build-ubuntu-toolbox.yml +++ b/.github/workflows/build-ubuntu-toolbox.yml @@ -27,7 +27,7 @@ jobs: # Build metadata - name: Image Metadata - uses: docker/metadata-action@v4 + uses: docker/metadata-action@v5 id: meta with: images: | @@ -73,7 +73,7 @@ jobs: --disable-content-trust - name: Login to GitHub Container Registry - uses: docker/login-action@v2 + uses: docker/login-action@v3 if: github.event_name != 'pull_request' with: registry: ghcr.io diff --git a/.github/workflows/build-wolfi-toolbox.yml b/.github/workflows/build-wolfi-toolbox.yml index fbc81e85d49..81b72257173 100644 --- a/.github/workflows/build-wolfi-toolbox.yml +++ b/.github/workflows/build-wolfi-toolbox.yml @@ -27,7 +27,7 @@ jobs: # Build metadata - name: Image Metadata - uses: docker/metadata-action@v4 + uses: docker/metadata-action@v5 id: meta with: images: | @@ -73,7 +73,7 @@ jobs: --disable-content-trust - name: Login to GitHub Container Registry - uses: docker/login-action@v2 + uses: docker/login-action@v3 if: github.event_name != 'pull_request' with: registry: ghcr.io diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 1fb9d80b152..cb73522db3c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,7 +1,7 @@ name: Build and Push Image on: schedule: - - cron: '00 10 * * *' # 10:00am everyday + - cron: '00 08 * * *' # 8:00am everyday merge_group: pull_request: workflow_dispatch: @@ -20,24 +20,13 @@ jobs: fail-fast: false matrix: image_flavor: [main, nvidia] - base_name: [bluefin, bluefin-dx, bluefin-framework, bluefin-dx-framework] + base_name: [bluefin, bluefin-dx] major_version: [38] - exclude: - - base_name: bluefin-dx-framework - image_flavor: nvidia - - base_name: bluefin-framework - image_flavor: nvidia include: - - base_name: bluefin-framework - target_base: bluefin - target_name: framework - - base_name: bluefin-dx-framework - target_base: bluefin-dx - target_name: framework - major_version: 38 is_latest_version: true is_stable_version: true - steps: + steps: # Checkout push-to-registry action GitHub repository - name: Checkout Push to Registry action uses: actions/checkout@v4 @@ -90,16 +79,16 @@ jobs: echo "${TAG}" done echo "alias_tags=${alias_tags[*]}" >> $GITHUB_OUTPUT - + - name: Get Current Fedora Version id: labels - run: | + run: | ver=$(skopeo inspect docker://ghcr.io/ublue-os/silverblue-${{ matrix.image_flavor }}:${{ matrix.major_version }} | jq -r '.Labels["org.opencontainers.image.version"]') echo "VERSION=$ver" >> $GITHUB_OUTPUT # Build metadata - name: Image Metadata - uses: docker/metadata-action@v4 + uses: docker/metadata-action@v5 id: meta with: images: | @@ -111,20 +100,6 @@ jobs: io.artifacthub.package.readme-url=https://raw.githubusercontent.com/ublue-os/bluefin/bluefin/README.md io.artifacthub.package.logo-url=https://avatars.githubusercontent.com/u/120078124?s=200&v=4 - # Update FROM lines for variants that have their own matrix via SED - # This is due to limitations in buildah using interpreted values as registry - # images and not image targets in file: - # `FROM ${TARGET_BASE} as framework` - # evalutates to `FROM bluefin as framework` but buildah then looks for quay.io/bluefin - # vs the existing containerfile target. - # TODO(GH-280): Find an alternative for this rather than using sed. - - name: Build Image - id: sed_workaround - if: matrix.target_base - shell: bash - run: | - sed -i 's/FROM bluefin AS bluefin-framework/FROM ${{ matrix.target_base }} AS ${{ matrix.base_name }}/' Containerfile - # Build image using Buildah action - name: Build Image id: build_image @@ -173,7 +148,7 @@ jobs: --disable-content-trust - name: Login to GitHub Container Registry - uses: docker/login-action@v2 + uses: docker/login-action@v3 if: github.event_name != 'pull_request' with: registry: ghcr.io @@ -197,4 +172,3 @@ jobs: if: github.event_name != 'pull_request' run: | echo "${{ toJSON(steps.push.outputs) }}" - diff --git a/Containerfile b/Containerfile index 96dab95a7fe..a87758db60a 100644 --- a/Containerfile +++ b/Containerfile @@ -108,22 +108,3 @@ RUN rm -f /etc/yum.repos.d/fedora-cisco-openh264.repo RUN rm -rf /tmp/* /var/* RUN ostree container commit - -# Image for Framework laptops -FROM bluefin AS bluefin-framework - -ARG FEDORA_MAJOR_VERSION="${FEDORA_MAJOR_VERSION}" -ARG PACKAGE_LIST="bluefin-framework" - -COPY framework/usr /usr -COPY packages.json /tmp/packages.json -COPY build.sh /tmp/build.sh - -# Handle packages via packages.json -RUN /tmp/build.sh - -RUN systemctl enable tlp -RUN systemctl enable fprintd.service - -RUN rm -rf /tmp/* /var/* -RUN ostree container commit diff --git a/framework/usr/etc/dconf/db/local.d/01-ublue-framework b/framework/usr/etc/dconf/db/local.d/01-ublue-framework deleted file mode 100644 index b44b63a0d2c..00000000000 --- a/framework/usr/etc/dconf/db/local.d/01-ublue-framework +++ /dev/null @@ -1,9 +0,0 @@ -[org/gnome/desktop/interface] -text-scaling-factor=1.25 - -[org/gnome/desktop/background] -picture-uri='file:///usr/share/backgrounds/framework_box.png' -picture-uri-dark='file:///usr/share/backgrounds/framework_box.png' -picture-options='zoom' -primary-color='E6C39AFF' -secondary-color='020201FF' diff --git a/framework/usr/etc/systemd/system/fprintd.service b/framework/usr/etc/systemd/system/fprintd.service deleted file mode 100644 index ac2e16776ec..00000000000 --- a/framework/usr/etc/systemd/system/fprintd.service +++ /dev/null @@ -1,48 +0,0 @@ -[Unit] -Description=Fingerprint Authentication Daemon -Documentation=man:fprintd(1) - -[Service] -Type=dbus -BusName=net.reactivated.Fprint -ExecStart=/usr/libexec/fprintd - -# Filesystem lockdown -ProtectSystem=strict -ProtectKernelTunables=true -ProtectKernelLogs=true -ProtectControlGroups=true -# This always corresponds to /var/lib/fprint -StateDirectory=fprint -StateDirectoryMode=0700 -ProtectHome=true -PrivateTmp=true - -SystemCallFilter=@system-service - -# Network -RestrictAddressFamilies=AF_UNIX AF_LOCAL AF_NETLINK - -# Execute Mappings -MemoryDenyWriteExecute=true - -# Modules -ProtectKernelModules=true - -# Real-time -RestrictRealtime=true - -# Privilege escalation -NoNewPrivileges=true - -# Protect clock, allow USB and SPI device access -ProtectClock=yes -DeviceAllow=char-usb_device rw -DeviceAllow=char-spi rw -DeviceAllow=char-hidraw rw - -# Allow tuning USB parameters (wakeup and persist) -ReadWritePaths=/sys/devices - -[Install] -WantedBy=multi-user.target \ No newline at end of file diff --git a/framework/usr/etc/tlp.d/50-framework.conf b/framework/usr/etc/tlp.d/50-framework.conf deleted file mode 100644 index e9968af1e97..00000000000 --- a/framework/usr/etc/tlp.d/50-framework.conf +++ /dev/null @@ -1,133 +0,0 @@ -# ------------------------------------------------------------------------------ -# /etc/tlp.conf - TLP user configuration (version 1.4) -# See full explanation: https://linrunner.de/tlp/settings -# -# Settings are read in the following order: -# -# 1. Intrinsic defaults -# 2. /etc/tlp.d/*.conf - Drop-in customization snippets -# 3. /etc/tlp.conf - User configuration (this file) -# -# Notes: -# - In case of identical parameters, the last occurence has precedence -# - This also means, parameters enabled here will override anything else -# - However you may append values to a parameter already defined as intrinsic -# default or in a previously read file: use PARAMETER+="add values" -# - IMPORTANT: all parameters here are disabled; remove the leading '#' if you -# like to enable a feature without default or have a value different from the -# default -# - Default *: intrinsic default that is effective when the parameter is missing -# or disabled by a leading '#'; use PARAM="" to disable an intrinsic default -# - Default : do nothing or use kernel/hardware defaults -# - -# ------------------------------------------------------------------------------ -# tlp - Parameters for power saving -# -# Settings based on Framework's guidance: https://knowledgebase.frame.work/en_us/optimizing-fedora-battery-life-r1baXZh - -# Select a CPU frequency scaling governor. -# Intel processor with intel_pstate driver: -# performance, powersave(*). -# Intel processor with intel_cpufreq driver (aka intel_pstate passive mode): -# conservative, ondemand, userspace, powersave, performance, schedutil(*). -# Intel and other processor brands with acpi-cpufreq driver: -# conservative, ondemand(*), userspace, powersave, performance, schedutil(*). -# Use tlp-stat -p to show the active driver and available governors. -# Important: -# Governors marked (*) above are power efficient for *almost all* workloads -# and therefore kernel and most distributions have chosen them as defaults. -# You should have done your research about advantages/disadvantages *before* -# changing the governor. -# Default: - -CPU_SCALING_GOVERNOR_ON_AC=performance -CPU_SCALING_GOVERNOR_ON_BAT=powersave - -# Set Intel CPU energy/performance policies HWP.EPP and EPB: -# performance, balance_performance, default, balance_power, power. -# Values are given in order of increasing power saving. -# Notes: -# - HWP.EPP: requires kernel 4.10, intel_pstate scaling driver and Intel Core i -# 6th gen. or newer CPU -# - EPB: requires kernel 5.2 or module msr and x86_energy_perf_policy from -# linux-tools, intel_pstate or intel_cpufreq scaling driver and Intel Core i -# 2nd gen. or newer CPU -# - When HWP.EPP is available, EPB is not set -# Default: balance_performance (AC), balance_power (BAT) - -CPU_ENERGY_PERF_POLICY_ON_AC=performance -CPU_ENERGY_PERF_POLICY_ON_BAT=power - -# Set Intel CPU P-state performance: 0..100 (%). -# Limit the max/min P-state to control the power dissipation of the CPU. -# Values are stated as a percentage of the available performance. -# Requires intel_pstate or intel_cpufreq driver and Intel Core i 2nd gen. or -# newer CPU. -# Default: - -CPU_MIN_PERF_ON_AC=0 -CPU_MAX_PERF_ON_AC=100 -CPU_MIN_PERF_ON_BAT=0 -CPU_MAX_PERF_ON_BAT=30 - -# Set the CPU "turbo boost" (Intel) or "turbo core" (AMD) feature: -# 0=disable, 1=allow. -# Note: a value of 1 does *not* activate boosting, it just allows it. -# Default: - -CPU_BOOST_ON_AC=1 -CPU_BOOST_ON_BAT=0 - -# Set the Intel CPU HWP dynamic boost feature: -# 0=disable, 1=enable. -# Requires intel_pstate scaling driver in 'active' mode and Intel Core i -# 6th gen. or newer CPU. -# Default: - -CPU_HWP_DYN_BOOST_ON_AC=1 -CPU_HWP_DYN_BOOST_ON_BAT=0 - -# Select platform profile: -# performance, balanced, low-power. -# Controls system operating characteristics around power/performance levels, -# thermal and fan speed. Values are given in order of increasing power saving. -# Note: check the output of tlp-stat -p to determine availability on your -# hardware and additional profiles such as: balanced-performance, quiet, cool. -# Default: - -PLATFORM_PROFILE_ON_AC=performance -PLATFORM_PROFILE_ON_BAT=low-power - -# Set the min/max/turbo frequency for the Intel GPU. -# Possible values depend on your hardware. For available frequencies see -# the output of tlp-stat -g. -# Default: - -INTEL_GPU_MIN_FREQ_ON_AC=100 -INTEL_GPU_MIN_FREQ_ON_BAT=100 -INTEL_GPU_MAX_FREQ_ON_AC=1300 -INTEL_GPU_MAX_FREQ_ON_BAT=800 -INTEL_GPU_BOOST_FREQ_ON_AC=1300 -INTEL_GPU_BOOST_FREQ_ON_BAT=1100 - -# Wi-Fi power saving mode: on=enable, off=disable. -# Default: off (AC), on (BAT) - -#WIFI_PWR_ON_AC=off -WIFI_PWR_ON_BAT=off - -# PCIe Active State Power Management (ASPM): -# default(*), performance, powersave, powersupersave. -# (*) keeps BIOS ASPM defaults (recommended) -# Default: - -#PCIE_ASPM_ON_AC=default -PCIE_ASPM_ON_BAT=powersupersave - -# Exclude PCIe devices assigned to the listed drivers from Runtime PM. -# Note: this preserves the kernel driver default, to force a certain state -# use RUNTIME_PM_ENABLE/DISABLE instead. -# Separate multiple drivers with spaces. -# Default: "mei_me nouveau radeon", use "" to disable completely. - -RUNTIME_PM_DRIVER_DENYLIST="" diff --git a/framework/usr/share/backgrounds/FrameworkZB.jpg b/framework/usr/share/backgrounds/FrameworkZB.jpg deleted file mode 100644 index ae8289c654b..00000000000 Binary files a/framework/usr/share/backgrounds/FrameworkZB.jpg and /dev/null differ diff --git a/framework/usr/share/backgrounds/center.png b/framework/usr/share/backgrounds/center.png deleted file mode 100644 index a073a31799e..00000000000 Binary files a/framework/usr/share/backgrounds/center.png and /dev/null differ diff --git a/framework/usr/share/backgrounds/frameworkZB_fedora.jpg b/framework/usr/share/backgrounds/frameworkZB_fedora.jpg deleted file mode 100644 index 768437e8872..00000000000 Binary files a/framework/usr/share/backgrounds/frameworkZB_fedora.jpg and /dev/null differ diff --git a/framework/usr/share/backgrounds/framework_box.png b/framework/usr/share/backgrounds/framework_box.png deleted file mode 100644 index 77f507cbc63..00000000000 Binary files a/framework/usr/share/backgrounds/framework_box.png and /dev/null differ diff --git a/framework/usr/share/backgrounds/hills.jpg b/framework/usr/share/backgrounds/hills.jpg deleted file mode 100644 index 8dfd202f096..00000000000 Binary files a/framework/usr/share/backgrounds/hills.jpg and /dev/null differ diff --git a/framework/usr/share/gnome-background-properties/FrameworkZB.xml b/framework/usr/share/gnome-background-properties/FrameworkZB.xml deleted file mode 100644 index 8b328597c19..00000000000 --- a/framework/usr/share/gnome-background-properties/FrameworkZB.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - Frameworkzb - /usr/share/backgrounds/FrameworkZB.jpg - zoom - solid - #323232 - #83837B - - diff --git a/framework/usr/share/gnome-background-properties/center.xml b/framework/usr/share/gnome-background-properties/center.xml deleted file mode 100644 index 9202c2364e5..00000000000 --- a/framework/usr/share/gnome-background-properties/center.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - Center - /usr/share/backgrounds/center.png - zoom - solid - #0B0B0BFF - #211F1DFF - - diff --git a/framework/usr/share/gnome-background-properties/frameworkZB_fedora.xml b/framework/usr/share/gnome-background-properties/frameworkZB_fedora.xml deleted file mode 100644 index fc0d9f57b2d..00000000000 --- a/framework/usr/share/gnome-background-properties/frameworkZB_fedora.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - Frameworkzb_fedora - /usr/share/backgrounds/frameworkZB_fedora.jpg - zoom - solid - #323232 - #646660 - - diff --git a/framework/usr/share/gnome-background-properties/framework_box.xml b/framework/usr/share/gnome-background-properties/framework_box.xml deleted file mode 100644 index 56dab043c85..00000000000 --- a/framework/usr/share/gnome-background-properties/framework_box.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - Framework_box - /usr/share/backgrounds/framework_box.png - zoom - solid - #E6C39AFF - #020201FF - - diff --git a/framework/usr/share/gnome-background-properties/hills.xml b/framework/usr/share/gnome-background-properties/hills.xml deleted file mode 100644 index b655fbd3681..00000000000 --- a/framework/usr/share/gnome-background-properties/hills.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - Hills - /usr/share/backgrounds/hills.jpg - zoom - solid - #57351F - #C4D3DD - - diff --git a/packages.json b/packages.json index be256269852..50e6fcda2b2 100644 --- a/packages.json +++ b/packages.json @@ -82,11 +82,8 @@ "qemu", "ubuntu-nerd-fonts", "ubuntumono-nerd-fonts", - "virt-manager" - ], - "bluefin-framework": [ - "tlp", - "tlp-rdw" + "virt-manager", + "wl-clipboard" ] }, "exclude": { @@ -96,10 +93,7 @@ "gnome-software-rpm-ostree", "gnome-tour" ], - "bluefin-dx": [], - "bluefin-framework": [ - "power-profiles-daemon" - ] + "bluefin-dx": [] } }, "38": { @@ -112,8 +106,7 @@ "bluefin": [ "podman-docker" ], - "bluefin-dx": [], - "bluefin-framework": [] + "bluefin-dx": [] } } } diff --git a/usr/share/ublue-os/just/custom.just b/usr/share/ublue-os/just/custom.just index 4a34107c8bc..9abeb41cf92 100644 --- a/usr/share/ublue-os/just/custom.just +++ b/usr/share/ublue-os/just/custom.just @@ -182,8 +182,17 @@ touch: gext install improvedosk@nick-shmyrev.dev gext install gestureImprovements@gestures +# A preview of what the update system would look like in the future +update-ng: + echo 'Upgrading system...' + sudo bootc upgrade + echo 'Upgrading flatpaks...' + flatpak update -y + echo 'Assembling and replacing distroboxes ...' + distrobox assemble create --replace --file /etc/distrobox/distrobox.ini + # Upgrade Distrobox to the latest git version -update-distrobox-git: +distrobox-git: echo 'Installing latest git snapshot of Distrobox' curl -s https://raw.githubusercontent.com/89luca89/distrobox/main/install | sh -s -- --next --prefix ~/.local @@ -198,3 +207,4 @@ zsh: docker: sudo systemctl enable --now docker sudo usermod -aG docker $USER + newgrp docker