-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

On Sun, Apr 14, 2019 at 02:27:47PM -0700, Dylanger Daly wrote:
> On Saturday, April 13, 2019 at 12:48:14 AM UTC+1, Marek Marczykowski-Górecki 
> wrote:
> > -----BEGIN PGP SIGNED MESSAGE-----
> > Hash: SHA256
> > 
> > On Fri, Apr 12, 2019 at 04:24:11PM -0700, Dylanger Daly wrote:
> > > On Friday, April 12, 2019 at 1:50:54 PM UTC+1, Marek Marczykowski-Górecki 
> > > wrote:
> > > > -----BEGIN PGP SIGNED MESSAGE-----
> > > > Hash: SHA256
> > > > 
> > > > On Fri, Apr 12, 2019 at 04:45:32AM -0700, Dylanger Daly wrote:
> > > > > On Friday, April 12, 2019 at 12:28:12 PM UTC+1, Frédéric Pierret 
> > > > > wrote:
> > > > > > Hi,
> > > > > > 
> > > > > > Indeed, it's overwritten. You need to change sources directly 
> > > > > > located in
> > > > > > : qubes-builder/qubes-src/vmm-xen/
> > > > > > 
> > > > > > Do your changes here and the 'make  vmm-xen' will take care of 
> > > > > > putting
> > > > > > your changes into the chroot.
> > > > > > 
> > > > > > Also, it seems that you are trying to build dom0 under fc29 which 
> > > > > > is for
> > > > > > release 4.1 (still work in progress).
> > > > > > 
> > > > > > Try to use r4.0 config file instead and not master except if you 
> > > > > > know
> > > > > > what you are doing :)
> > > > 
> > > > setup script will ask you for the qubes version - choose 4.0.
> > > > Alternatively, if you use a config from example-configs/ directly,
> > > > choose the one with 4.0 in name.
> > > > 
> > > > In the end, you should get xen-4.8 branch in vmm-xen repository.
> > > > 
> > > > > Hmm, I can't seem to find the actual source, there are only .patch
> > > > > files in qubes-src/vmm-xen, for example, hvmloader.c dosen't exist in 
> > > > > vmm-xen.
> > > > 
> > > > There is xen tarball with actual source code, but this not the place 
> > > > you should change.
> > > > What you need to do, is to create a patch and add it to the list.
> > > > Since you already know how to change files in
> > > > qubes-builder/chroot-dom0-..., you can use that to create a patch.
> > > > You'll need "quilt" tool installed. Roughly do this:
> > > > 
> > > > 1. Build vmm-xen unmodified
> > > > 2. Go to
> > > > qubes-builder/chroot-dom0-fc25/home/user/rpmbuild/BUILD/xen-4.8.5
> > > > 3. Execute "quilt new some-patch-name.patch" (you can use any name)
> > > > 4. Identify what files you want to modify and mark them (before you
> > > > modify anything!) with quilt add 
> > > > 5. Do your modifications
> > > > 6. Execute "quilt refresh" to create actual patch. You'll find it in
> > > > .patches dir there.
> > > > 
> > > > Then, copy resulting patch to qubes-src/vmm-xen and add it to the list
> > > > in xen.spec.in (Patch... lines, add it at the end, with a new number).
> > > > 
> > > > Alternatively, if you're comfortable with using git, it may be easier to
> > > > use it to create the patch instead. Simply clone upstream xen git
> > > > repository (https://xenbits.xen.org/git-http/xen.git), switch to
> > > > stable-4.8 branch and create a commit on top. Then export it with "git
> > > > format-patch -1"
> > > 
> > > After adding an xl feature (spoof_xen) to be exact, does anyone know how 
> > > to then enable the bool for an HVM appVM?
> > > 
> > > The feature is in the same position as pae, acpi and viridian, using 
> > > `virsh edit <VM_NAME>` and adding `<spoof_xen/>` results in `error: XML 
> > > document failed to validate against schema: Unable to validate doc 
> > > against /usr/share/libvirt/schemas/domain.rng`
> > > 
> > > Then if I force: `unexpected feature 'spoof_xen'`, I would assume because 
> > > the upper Qubes layer isn't aware the feature exists within Xen?
> > 
> > Yes, exactly. There is libvirt between those two...
> > Here you can see patches adding similar flag in libvirt:
> > https://github.com/QubesOS/qubes-core-libvirt/blob/master/0009-conf-add-xen-specific-feature-e820_host.patch
> > https://github.com/QubesOS/qubes-core-libvirt/blob/master/0010-libxl-make-use-of-e820_host-feature.patch
> > 
> > Since the first patch is already there, adding yet another feature is
> > much less code.
> 
> Anyone know how to install the changes without creating an ISO?
> 
> It looks like it's output 
> `qubes-builder/qubes-src/core-libvirt/pkgs/dom0-fc25/x86_64` however when I 
> install libvirt-3.3.0-7.fc25.x86_64.rpm I don't think it's actually installed 
> my changes. `docs/schemas/domaincommon.rng` for example hasn't been updated.

You need to install other updates from that directory too. See list of
currently installed libvirt packages (rpm -q 'libvirt*' in dom0).
To ease the whole thing, you may want to enable
INCREMENT_DEVEL_VERSIONS=1 in builder.conf. This way, each build will
have increased revision number, which will allow you to simply use 'dnf
update path/to/packages/*.rpm' and it will pick the right ones.

If you trust your development VM, you can ease copying to dom0 by using
tar:

    qvm-run -p devel 'tar c
    qubes-builder/qubes-src/core-libvirt/pkgs/dom0-fc25'|tar xvk

("k" prevent tar to override already existing files)

- -- 
Best Regards,
Marek Marczykowski-Górecki
Invisible Things Lab
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAlyz14gACgkQ24/THMrX
1yy/jwf8DP6KCGpInaBIRrhdeNOf3eeiNJReHBGHxgS8iwwFrhrUw5hwSjUHOV7V
1pBmuQNrWc/BwQKkHZKKenuOzUlenJJuVuoFGVI0SiCA6CV9GpssCBer09EIiwn0
aTsfbJtxvxZ2oV14CpOmPUiLJN0qA2vE6Soy7KiB+Pk6Z8UO5gOh+AcpRk31ygC8
TSMSLWCxuD5mQGSqwobS8AfCqqZ7YYc0MjWM+idH2gE73Q7FgpS9447iZ8HY3WpC
kaeUzMTMWpkURuTpE+CzHc8j0f8XrsK8rMbKMferJWnBLsyBCsGV1ywM0ye0EcLH
1TqoyO8sze7EuRqgJaGMJrLhJuGEjg==
=ALpI
-----END PGP SIGNATURE-----

-- 
You received this message because you are subscribed to the Google Groups 
"qubes-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/qubes-devel/20190415005952.GE1502%40mail-itl.
For more options, visit https://groups.google.com/d/optout.

Reply via email to