/srv/irclogs.ubuntu.com/2018/11/06/#ubuntu-installer.txt

Laneyxnox: Seems complicated for the task of saving top-level things - couldn't you check for '/' in the path?16:14
Laney(moving here from release :P)16:14
xnoxLaney, this would only fix symlinks in the top-level dir though.... there might be symlinks to dirs in packages too, which should be copied.....16:15
Laneywhy would they be blacklisted?16:15
xnoxor we can declare we don't care, than a '/' in relpath would do.16:16
xnoxLaney, because blacklisted package ships it as a dir; whilst top-level one decided to move e.g. plugins dir elsewhere, hence declares a symlink dir.16:16
Laneydoesn't your proposal do this 'bad' thing anyway?16:18
xnoxLaney, also i noticed that libgtk2.0-0 ships a broken symlink.16:19
xnox$ ls /usr/share/doc/libgtk2.0-0/changelog.gz16:19
xnoxlrwxrwxrwx 1 root root 32 Sep 21 11:54 /usr/share/doc/libgtk2.0-0/changelog.gz -> ../libgtk2.0-common/changelog.gz16:19
xnoxLaney, with my proposal, the top-level package which is kept, will have its symlink installed into target. as is correct what dpkg did.16:19
xnoxLaney, to be fair this is all very hackish. ideally we'd be using stacked squashfs ;-) or like actually execute dpkg to remove packages.16:20
LaneyI see this "return '/' in relpath at the end"16:20
Laneyso I don't get why it would work16:20
xnoxLaney, but by that point all conditions above are true16:20
xnoxas in, it is a blacklisted filename, it is a symlink, it is a symlink to a dir, it is not a broken symlink, and it's not a top level one.16:21
xnoxand is kind of what infinity asked for16:21
xnoxfunny he is not in this channel.16:21
Laneyyes and True means blacklisted no?16:21
xnoxyes16:21
xnoxhorum.16:21
xnoxas in do not copy.16:22
xnoxargh16:22
xnoxi do wonder if all of the conditions in between simply reduce to to '/i' in relpath16:23
xnoxi do wonder if all of the conditions in between simply reduce to to '/' in relpath16:23
xnoxalso not sure if we should be copying broken symlinks from /rofs to /target16:24
xnoxe.g. /usr/share/doc/libgtk2.0-0/changelog.gz16:25
Laneyif the deb has it, I'd say you should keep it16:25
xnoxright, it's just dirs and symlinks are funny. cause they exist in both list to keep and list to blacklist.16:25
xnoxi wonder this16:26
xnoxmaybe directories should not be in the blacklist to begin with.16:26
xnoxi.e. /usr /usr/bin should not be in the blacklist.....16:26
Laneythey're all not considered anyway16:27
xnoxwhat do you mean?16:27
xnoxin this part of the code we decide what to copy from /rofs to /target16:27
Laneyubiquity stats the things and if it's a directory skips blacklisting16:27
xnoxand /rofs has everything preinstalled.16:27
xnoxmeaning we potentially install many empty redundant dirs in /target, if they are fully blacklisted.16:29
Laneyref count them :-)16:30
Laneyreally though, more than a minimal amount of fixing in ubiquity is probably not a great idea at this point16:30
Laneygiven Installer NG™16:31
xnoxInstaller NG.io16:31
xnoxhahahahhahaha16:31
xnoxLaney, so i guess i should test this instead http://paste.ubuntu.com/p/kFPTzBMjNC/16:33
xnoxcause this means our top-level tree stays.16:34
xnoxand it will break when we decide to do usr/sbin -> usr/bin16:34
xnoxkicking the can down the road.16:34
xnoxright16:34
xnoxso my long code works for nested symlinks to dirs.16:34
xnoxbecause it does a stat on the symlink target, and if that is a dir, it skips blacklisting.16:35
xnoxthus probably i never actually get to the '/' in relpath fallthrough.16:35
xnoxmaybe16:35
Laneyhow does usrmerge actually work?16:38
Laneysomething ships the symlink and dpkg follows that when unpacking packages?16:38
xnoxLaney, debootstrap pre-creates /bin -> usr/bin symlink; dpkg never replaces a symlink with a dir; thus when it unpacks base-files or debs that ship /bin (dir) /bin/true (file) the `true` binary ends up in /usr/bin/true on disk16:46

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!