Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 549716 - squashdelta portage sync module does not call squashmount
Summary: squashdelta portage sync module does not call squashmount
Status: RESOLVED OBSOLETE
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Michał Górny
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-05-17 12:41 UTC by Martin Väth
Modified: 2015-05-19 16:58 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Väth 2015-05-17 12:41:19 UTC
This is kind of successor of bug 549594:

Portage-9999 (fetched after commit 3ea4713d895cc1b341277c5b4db0f9d4b671b9cd)
with sync-type = squashdelta does not call squashmount.

It fetches the checksum file, fetches the correct delta-file, and then stops without any apparent error/warning:

I suppose that it should call squashmount, set the new gentoo-current.sqfs symlink, remove the old squashfile and checksum file, and remount the directory.
Nothing of this happens.

I can do all this manually without any problems, but I guess it is intended that this should work automatically. sys-fs/squashmount is installed, of course (and, as mentioned, it works, if it is called manually).

In case it plays a role: I had moved /var/cache/portage to a different directory and set a symlink, but was careful to keep the permissions of /var/cache/portage/squashfs ro drwxrwxr-x root:portage. All files in this directory are read-writable by portage:portage
Comment 1 Brian Dolbec (RETIRED) gentoo-dev 2015-05-17 14:26:31 UTC
hmm, it was working for me once I made the correct fstab entry.  But it was using the default location.

Currently the plugin-sync system does not make it easy to add variables to the repos.config sections.  That is still a task to refactor that code.  At that point it will be easy for module types to add whatever data variables are required.  Like the cache-dir for the dl'd squashfs images, delta's and gpg sigs.
Comment 2 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2015-05-17 17:28:18 UTC
Another bug introduced by you forcing to move things around for no good reason while I didn't have time to do it. Patch on ml.
Comment 3 Martin Väth 2015-05-17 18:57:59 UTC
(In reply to Brian Dolbec from comment #1)
> hmm, it was working for me once I made the correct fstab entry.

I had a presumably correct fstab entry (with /var/cache/portage being replaced by by the content of the symlink for the *.sqfs file).

> Like the cache-dir for the dl'd squashfs images, delta's and gpg sigs.

That would be great.

Actually it would also be great if one could configure somehow a custom command instead of the automagic "mount".

Then e.g. my "squashmount" utility could be used to mount the portage directory read-writable (via overlayfs/aufs/unionfs-fuse/...) which avoids all these problems with readonly PORTIDR (see e.g. bug 549630) and is also handy if you just "quickly" want to make some temporary changes (e.g. to fix a broken Manifest which occurs from time to time after syncing).

I guess that such a possible interplay would be of interest to many users who currently use "squashmount" to mount PORTDIR read-writable:
Since squashmount is a service started at init, there would be no need for a dedicated /etc/fstab entry, you can configure where to store the changes (e.g. in a temporary directory), you have a command to "kill" the local changes etc.

It is not necessary to explicitly support "squashmount" for this: Just some configuration possibility to replace the mount commands by custom commands would be enough. I could then write detailed instructions into the documentation of squashmount as an example.
Comment 4 Brian Dolbec (RETIRED) gentoo-dev 2015-05-18 23:35:58 UTC
This module is no longer part of the main portage package and code base.
Comment 5 Martin Väth 2015-05-19 16:52:24 UTC
(In reply to Brian Dolbec from comment #4)
> This module is no longer part of the main portage package and code base.

It's a pity.
The intention of my bug reports was not to cause its removal but its improvement.

Maybe later I can provide some code; however, currently I am too busy with my job.