Bug 2219097

Summary: rpm-ostree install Unwilling to Enable Repos At Runtime
Product: [Fedora] Fedora Reporter: Jonathan Steffan <jonathansteffan>
Component: rpm-ostreeAssignee: Joseph Marrero <jmarrero>
Status: ASSIGNED --- QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 38CC: amurdaca, dustymabe, jmarrero, jonathan, miabbott, philip.wyett, travier, walters
Target Milestone: ---Keywords: Desktop
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jonathan Steffan 2023-07-02 01:06:51 UTC
I'm unable to install packages from updates-testing without enabling the repo via config. For example, enabling the repo in `gnome-software`

Reproducible: Always

Steps to Reproduce:
1. `rpm-ostree install --enablerepo updates-testing somepackage`
2. Note that the updates-testing repo is not enabled.
3. Change the repo configuration (i.e. via gnome-software), note that the repo is enabled.
Actual Results:  
Runtime configuration of repos not working, making testing more laborious.

Expected Results:  
Repos can be enabled/disabled at runtime.

This also affects --disablerepo.

Comment 1 Joseph Marrero 2023-07-04 00:03:15 UTC
Are you running this command in a container build?

Currently these options are only supported on the container build side of the code. The documentation does not reflect that, which I will update thanks to this code.


=========
STEP 3/3: RUN rpm-ostree --releasever=37 --disablerepo="*"     --enablerepo=fedora install tmux
Enabled rpm-md repositories: fedora
Updating metadata for 'fedora'...done
Importing rpm-md...done
rpm-md repo 'fedora'; generated: 2022-11-05T08:04:38Z solvables: 66822
Resolving dependencies...done
Will download: 1 package (518.0?kB)
Downloading from 'fedora'...done
Installing 1 packages:
  tmux-3.3a-1.fc37.x86_64 (fedora)
Installing: tmux-3.3a-1.fc37.x86_64 (fedora)
COMMIT
=========


=========
STEP 3/3: RUN rpm-ostree install --releasever=37 --disablerepo="*"     --enablerepo=updates-testing tmux
Enabled rpm-md repositories: updates-testing
Updating metadata for 'updates-testing'...done
Importing rpm-md...done
rpm-md repo 'updates-testing'; generated: 2023-07-03T01:30:08Z solvables: 4916
error: Packages not found: tmux
=========

Comment 2 Jonathan Steffan 2023-07-04 20:32:59 UTC
No, I'm running this on an installed system to test a package update that is a layered package. The command runs, but clearly the updates-testing repo was not enabled and the old package is installed.

[jon@fedora ~]$ rpm-ostree status
State: idle
Deployments:
● fedora:fedora/38/x86_64/silverblue
                  Version: 38.20230704.0 (2023-07-04T00:44:59Z)
               BaseCommit: e8800ef64576d848740f6cd98bbbc1831d094cd6330df1ac741839f0cdb2209d
             GPGSignature: Valid signature by 6A51BBABBA3D5467B6171221809A8D7CEB10B464
          LayeredPackages: langpacks-en vim

  fedora:fedora/38/x86_64/silverblue
                  Version: 38.20230701.0 (2023-07-01T00:41:35Z)
               BaseCommit: 0c272997cd2e70529da7fd238236b5c1a4bc74e40bc7e4827a0f10b5a38e3ece
             GPGSignature: Valid signature by 6A51BBABBA3D5467B6171221809A8D7CEB10B464
          LayeredPackages: langpacks-en vim
[jon@fedora ~]$ rpm-ostree install --enablerepo updates-testing memtest86+
Checking out tree e8800ef... done
Enabled rpm-md repositories: fedora-cisco-openh264 updates fedora updates-archive
Importing rpm-md... done
rpm-md repo 'fedora-cisco-openh264' (cached); generated: 2023-03-14T10:56:46Z solvables: 4
rpm-md repo 'updates' (cached); generated: 2023-07-04T01:25:41Z solvables: 17650
rpm-md repo 'fedora' (cached); generated: 2023-04-13T20:37:10Z solvables: 69222
rpm-md repo 'updates-archive' (cached); generated: 2023-06-16T03:08:05Z solvables: 18277
Resolving dependencies... done
Will download: 1 package (79.7 kB)
Downloading from 'fedora'... done
Importing packages... done
Checking out packages... done
Running pre scripts... done
Running post scripts... done
Running posttrans scripts... done
Writing rpmdb... done
Writing OSTree commit... done
Staging deployment... done
Freed: 75.1 MB (pkgcache branches: 1)
Added:
  memtest86+-5.31-0.8.beta.fc38.x86_64
Changes queued for next boot. Run "systemctl reboot" to start a reboot
[jon@fedora ~]$ rpm-ostree status
State: idle
Deployments:
  fedora:fedora/38/x86_64/silverblue
                  Version: 38.20230704.0 (2023-07-04T00:44:59Z)
               BaseCommit: e8800ef64576d848740f6cd98bbbc1831d094cd6330df1ac741839f0cdb2209d
             GPGSignature: Valid signature by 6A51BBABBA3D5467B6171221809A8D7CEB10B464
                     Diff: 1 added
          LayeredPackages: 'memtest86+' langpacks-en vim

● fedora:fedora/38/x86_64/silverblue
                  Version: 38.20230704.0 (2023-07-04T00:44:59Z)
               BaseCommit: e8800ef64576d848740f6cd98bbbc1831d094cd6330df1ac741839f0cdb2209d
             GPGSignature: Valid signature by 6A51BBABBA3D5467B6171221809A8D7CEB10B464
          LayeredPackages: langpacks-en vim

  fedora:fedora/38/x86_64/silverblue
                  Version: 38.20230701.0 (2023-07-01T00:41:35Z)
               BaseCommit: 0c272997cd2e70529da7fd238236b5c1a4bc74e40bc7e4827a0f10b5a38e3ece
             GPGSignature: Valid signature by 6A51BBABBA3D5467B6171221809A8D7CEB10B464
          LayeredPackages: langpacks-en vim