Bug 230023 - [exp-run] Switch to use xorgproto instead of individual proto packages
Summary: [exp-run] Switch to use xorgproto instead of individual proto packages
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Ports Framework (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Niclas Zeising
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-07-24 20:13 UTC by Niclas Zeising
Modified: 2018-08-07 12:38 UTC (History)
5 users (show)

See Also:
koobs: exp-run+


Attachments
xorgproto add and infra update (220.42 KB, patch)
2018-07-24 20:13 UTC, Niclas Zeising
no flags Details | Diff
xproto add and infra update, rev 3 (238.01 KB, patch)
2018-07-25 15:58 UTC, Niclas Zeising
no flags Details | Diff
xproto add and infra update, rev 4 (238.31 KB, patch)
2018-07-27 21:48 UTC, Niclas Zeising
no flags Details | Diff
xorg proto add and infra update rev 6 (247.73 KB, patch)
2018-07-28 07:50 UTC, Niclas Zeising
no flags Details | Diff
xorgproto add and infra update, rev 8 (250.54 KB, patch)
2018-07-30 15:24 UTC, Niclas Zeising
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Niclas Zeising freebsd_committer freebsd_triage 2018-07-24 20:13:07 UTC
Created attachment 195432 [details]
xorgproto add and infra update

Hi!
xorg upstream has switched from individual protocol packages to have one package with all protocol headers.  The attached patch updates the ports tree to use this xorgproto, and removes the individual proto packages.

Since this touches a lot of ports and infrastructure, in the middle of the whole xorg infrastructure, I would like an exp-run to detect any fallout.

Attached patch does the following:
Adds x11/xorgproto
Hooks xorgproto up to infrastructure in bsd.xorg.mk and x11/Makefile
Removes old proto ports from bsd.xorg.mk, the ports tree and category Makefiles
Updates all dependencies in ports to point to xorgproto (USE_XORG=xorgproto)
Bumps portrevision of all touched ports

Thank you!
Regards
-- 
Niclas
Comment 1 Mathieu Arnold freebsd_committer freebsd_triage 2018-07-25 08:05:56 UTC
Does any port require the LEGACY option?
Comment 2 Niclas Zeising freebsd_committer freebsd_triage 2018-07-25 08:20:24 UTC
I haven't done an exhaustive search, but I'm aware of several xorg ports that needs it to be enabled.  I was a bit on the fence on always enabling it or creating an option, but I went for the option in the end.  I can enable it unconditionally if you feel this is better.

The patch should still be good for an exp run though, with the option enabled.
Comment 3 Mathieu Arnold freebsd_committer freebsd_triage 2018-07-25 11:44:49 UTC
I think that until we have subpackages, a slave port like xorgproto-legacy would be preferable.
Comment 4 Niclas Zeising freebsd_committer freebsd_triage 2018-07-25 11:49:04 UTC
They would have a very big overlap, and it will not be possible to install them both at the same time (at least not without major surgery).  All ports would need to depend on the legacy slave port anyway so it doesn't give us anything.  Then it is, in my opinion, better to just skip the option and always enable the legacy protocol headers.  I can re-roll the patch with this change tonight.
Comment 5 Mathieu Arnold freebsd_committer freebsd_triage 2018-07-25 12:00:04 UTC
I was thinking of having the -legacy port only install the legacy headers.
Comment 6 Niclas Zeising freebsd_committer freebsd_triage 2018-07-25 12:07:10 UTC
I understand.   To do that I have to hack up the entire build infrastructure in the port to only install the legacy headers.  It is doable, but increases maintenance since we will have local patches to keep track of.
Comment 7 Niclas Zeising freebsd_committer freebsd_triage 2018-07-25 15:58:44 UTC
Created attachment 195448 [details]
xproto add and infra update, rev 3

Hi!
I elected to remove the LEGACY option and have it always be on.  I believe this is the best way forward.  The patch is updated to reflect this, as well as some minor changes and addition of MOVED entries.  It's been rebased on the ports tree from today.
Comment 8 Antoine Brodin freebsd_committer freebsd_triage 2018-07-27 20:45:24 UTC
Something seems missing:

[00:00:05] Warning: Nonexistent origin listed in category Makefiles: x11/xproxymanagementprotocol (skipping)


[00:00:39] Warning: (net/tigervnc): make: "/usr/ports/net/tigervnc/Makefile" line 39: Unassociated shell command "ice pixman sm x11 xau xdamage xdmcp xext xfixes xfont xkbfile  xorg-macros xorgproto xrandr xrender xtrans xtst"
[00:00:39] Warning: (net/tigervnc): make: Fatal errors encountered -- cannot continue


[00:00:58] Warning: (x11-wm/awesome): Error: x11-wm/awesome depends on nonexistent origin 'x11/xproto' (moved to x11/xorgproto); Please contact maintainer of the port to fix this.
Comment 9 Niclas Zeising freebsd_committer freebsd_triage 2018-07-27 21:48:49 UTC
Created attachment 195513 [details]
xproto add and infra update, rev 4

Hi!
Apologies for that, attached is an updated patch.
The first issue was just me forgetting to remove xproxymanagementprotocol from x11/Makefile, it's probably harmless, but fixed.
The second issue was an erroneous new line in the tigervnc Makefile
The second issue was a depdenency on xproto that wasn't removed in x11-wm/awesome/Makefile.  I missed it the first time since it was not in USE_XORG= but in regular BUILD_DEPENDS.

Patch is updated with fixes for those issues, and rebased onto a ports tree from today.  Once again apologies.
Comment 10 Antoine Brodin freebsd_committer freebsd_triage 2018-07-28 05:47:17 UTC
devel/sdl12 is ignored : requires unknown xorg module (xextproto)
Comment 11 Niclas Zeising freebsd_committer freebsd_triage 2018-07-28 07:50:19 UTC
Created attachment 195520 [details]
xorg proto add and infra update rev 6

Hi!
I've found a couple of more instances where I've missed to adjust the dependencies to point to xorgproto.  Hopefully  I've caught them all this time.
The patch has been updated with what I found, as well as rebased on the latest ports tree.
Thanks you for all help!
Regards
-- 
Niclas
Comment 12 Antoine Brodin freebsd_committer freebsd_triage 2018-07-30 06:09:51 UTC
New failures on 11.1 i386:

+ {"origin"=>"games/xpilot-ng-client", "phase"=>"build", "errortype"=>"bad_C++_code"}
+ {"origin"=>"x11/xbelld", "phase"=>"build", "errortype"=>"bad_C++_code"}

New failure logs on 11.1 i386:

http://package23.nyi.freebsd.org/data/111i386-default-PR230023/2018-07-30_05h30m30s/logs/errors/xpilot-ng-client-4.7.3_4.log
http://package23.nyi.freebsd.org/data/111i386-default-PR230023/2018-07-30_05h30m30s/logs/errors/xbelld-0.2b2_4.log
Comment 13 Antoine Brodin freebsd_committer freebsd_triage 2018-07-30 11:12:28 UTC
New failures on 11.1 amd64:

+ {"origin"=>"games/xpilot-ng-client", "phase"=>"build", "errortype"=>"bad_C++_code"}
+ {"origin"=>"x11/xbelld", "phase"=>"build", "errortype"=>"bad_C++_code"}

New failure logs on 11.1 amd64:

http://package22.nyi.freebsd.org/data/111amd64-default-PR230023/2018-07-30_09h39m05s/logs/errors/xpilot-ng-client-4.7.3_4.log
http://package22.nyi.freebsd.org/data/111amd64-default-PR230023/2018-07-30_09h39m05s/logs/errors/xbelld-0.2b2_4.log
Comment 14 Niclas Zeising freebsd_committer freebsd_triage 2018-07-30 15:24:24 UTC
Created attachment 195645 [details]
xorgproto add and infra update, rev 8

I've fixed the two broken ports.  New patch with the fixes and rebased on today's ports tree is attached.

Is there anything else I need to do?
Comment 15 Antoine Brodin freebsd_committer freebsd_triage 2018-07-30 17:29:50 UTC
Patch approved if you tested the 2 ports.
Comment 16 Niclas Zeising freebsd_committer freebsd_triage 2018-07-30 20:06:20 UTC
Hi!
I just realized something.  How does pkg handle port renames and so on?
The problem is that xorgproto installs the same files as a bunch of old *proto ports, meaning they conflict.  The old ports are removed by this patch, but if I'm not mistaken, they won't be removed from the host system?

I guess one way to solve this is to keep the old *proto ports around, but have them not install anything and have nothing depend on them, that way they can co-exist with the xorgproto port, and then be removed by pkg autoremove or similar.  After a transition time (such as after the next quarterly branch) they can be removed.

Is this a good way, or is there a way to have pkg solve this with or without human input?


Perhaps this is not a problem and I'm just overly worried about breaking things, but I thought I'd bring it to the surface before pulling the trigger on the change.  I just need a little bit of help and advice.


Thank you for all help!
Regards
-- 
Niclas
Comment 17 Antoine Brodin freebsd_committer freebsd_triage 2018-07-30 20:10:39 UTC
The current way is to add a note to /usr/ports/UPDATING.
Installing xorgproto should trigger uninstall of the old one.
Comment 18 Niclas Zeising freebsd_committer freebsd_triage 2018-07-30 20:21:14 UTC
Ok!
Thank you for your help, and apologies if I'm overly worried.

I'll push this tomorrow, it's too late here now, just in case something breaks.
Comment 19 commit-hook freebsd_committer freebsd_triage 2018-07-31 18:41:57 UTC
A commit references this bug:

Author: zeising
Date: Tue Jul 31 18:41:39 UTC 2018
New revision: 476013
URL: https://svnweb.freebsd.org/changeset/ports/476013

Log:
  Switch to xorgproto instead of individual packages

  Upstream used to distribute protocol headers as separate packages, but has
  decided to merge those to a common package, named xorgproto.  This update
  tracks that change.

  * Add a new port, x11/xorgproto, with are protocol headers for xorg.
  * Hook the new protocol port to the build and to infrastructure in
    bsd.xorg.mk.
  * Update all ports with a dependency on any of the old *proto packages to
    instead depend on xorgproto.  Bump portrevision.
  * Delete the old *proto packages, update MOVED.

  PR:		230023
  Submitted by:	zeising
  Approved by:	portmgr (antoine)
  exp-run by:	antoine

Changes:
  head/MOVED
  head/Mk/bsd.port.mk
  head/Mk/bsd.xorg.mk
  head/UPDATING
  head/audio/rhythmbox/Makefile
  head/cad/brlcad/Makefile
  head/chinese/librime/Makefile
  head/devel/directfb/Makefile
  head/devel/imake/Makefile
  head/devel/lndir/Makefile
  head/devel/makedepend/Makefile
  head/devel/sdl12/Makefile
  head/editors/vim/Makefile
  head/emulators/open-vm-tools/Makefile
  head/emulators/stonx/Makefile
  head/emulators/virtualbox-ose/Makefile
  head/emulators/virtualbox-ose-additions/Makefile
  head/games/doom/Makefile
  head/games/fkiss/Makefile
  head/games/xjig/Makefile
  head/games/xpilot-ng-client/Makefile
  head/games/xtrojka/Makefile
  head/graphics/cairo/Makefile
  head/graphics/jogl/Makefile
  head/graphics/libosmesa/Makefile
  head/graphics/mesa-demos/Makefile
  head/graphics/mesa-dri/Makefile
  head/graphics/mesa-libs/Makefile
  head/graphics/pgplot/Makefile
  head/java/classpath/Makefile
  head/math/reduce/Makefile
  head/math/xppaut/Makefile
  head/misc/wmtunlo/Makefile
  head/multimedia/gstreamer-plugins/Makefile
  head/multimedia/gstreamer1-vaapi/Makefile
  head/multimedia/libcec/Makefile
  head/multimedia/libva/Makefile
  head/multimedia/libvdpau/Makefile
  head/multimedia/mplayer/Makefile
  head/multimedia/mplayer/Makefile.optvars
  head/multimedia/mpv/Makefile
  head/multimedia/recordmydesktop/Makefile
  head/multimedia/totem/Makefile
  head/multimedia/vlc/Makefile
  head/net/freerdp/Makefile
  head/net/freerdp1/Makefile
  head/net/mediastreamer/Makefile
  head/net/tigervnc/Makefile
  head/net/tigervnc-devel/Makefile
  head/net/x11vnc/Makefile
  head/science/paraview/Makefile
  head/security/keepassx/Makefile
  head/security/keepassx-devel/Makefile
  head/security/keepassx2/Makefile
  head/sysutils/gnome-control-center/Makefile
  head/sysutils/mate-power-manager/Makefile
  head/sysutils/xfce4-settings/Makefile
  head/textproc/scim-kmfl-imengine/Makefile
  head/www/chromium/Makefile
  head/www/gtkhtml4/Makefile
  head/www/iridium/Makefile
  head/www/links/Makefile
  head/www/links-hacked/Makefile
  head/www/qt5-webengine/Makefile
  head/x11/Makefile
  head/x11/bigreqsproto/
  head/x11/bitmap/Makefile
  head/x11/compositeproto/
  head/x11/damageproto/
  head/x11/dmxproto/
  head/x11/dri2proto/
  head/x11/dri3proto/
  head/x11/fixesproto/
  head/x11/gdm/Makefile
  head/x11/glproto/
  head/x11/i3lock/Makefile
  head/x11/iceauth/Makefile
  head/x11/inputproto/
  head/x11/kbproto/
  head/x11/kde-workspace-kde4/Makefile
  head/x11/libICE/Makefile
  head/x11/libSM/Makefile
  head/x11/libX11/Makefile
  head/x11/libXScrnSaver/Makefile
  head/x11/libXTrap/Makefile
  head/x11/libXau/Makefile
  head/x11/libXcomposite/Makefile
  head/x11/libXcursor/Makefile
  head/x11/libXdamage/Makefile
  head/x11/libXdmcp/Makefile
  head/x11/libXevie/Makefile
  head/x11/libXext/Makefile
  head/x11/libXfixes/Makefile
  head/x11/libXi/Makefile
  head/x11/libXinerama/Makefile
  head/x11/libXp/Makefile
  head/x11/libXpm/Makefile
  head/x11/libXprintAppUtil/Makefile
  head/x11/libXprintUtil/Makefile
  head/x11/libXrandr/Makefile
  head/x11/libXrender/Makefile
  head/x11/libXres/Makefile
  head/x11/libXtst/Makefile
  head/x11/libXv/Makefile
  head/x11/libXvMC/Makefile
  head/x11/libXxf86dga/Makefile
  head/x11/libXxf86misc/Makefile
  head/x11/libXxf86vm/Makefile
  head/x11/libdmx/Makefile
  head/x11/libxkbfile/Makefile
  head/x11/libxkbui/Makefile
  head/x11/libxshmfence/Makefile
  head/x11/listres/Makefile
  head/x11/lsw/Makefile
  head/x11/metalock/Makefile
  head/x11/nxcomp/Makefile
  head/x11/p5-X11-XCB/Makefile
  head/x11/p5-X11-Xlib/Makefile
  head/x11/presentproto/
  head/x11/printproto/
  head/x11/randrproto/
  head/x11/recordproto/
  head/x11/renderproto/
  head/x11/resourceproto/
  head/x11/rgb/Makefile
  head/x11/scrnsaverproto/
  head/x11/slock/Makefile
  head/x11/thinglaunch/Makefile
  head/x11/thingylaunch/Makefile
  head/x11/trapproto/
  head/x11/videoproto/
  head/x11/workrave/Makefile
  head/x11/xbelld/Makefile
  head/x11/xbelld/files/patch-xbell.c
  head/x11/xbelld/files/patch-xbelld.c
  head/x11/xcmiscproto/
  head/x11/xcursorgen/Makefile
  head/x11/xdpyinfo/Makefile
  head/x11/xdriinfo/Makefile
  head/x11/xextproto/
  head/x11/xf86dgaproto/
  head/x11/xf86driproto/
  head/x11/xf86miscproto/
  head/x11/xf86rushproto/
  head/x11/xf86vidmodeproto/
  head/x11/xfce4-clipman-plugin/Makefile
  head/x11/xfindproxy/Makefile
  head/x11/xfwp/Makefile
  head/x11/xineramaproto/
  head/x11/xinput/Makefile
  head/x11/xkbutils/Makefile
  head/x11/xorgproto/
  head/x11/xorgproto/Makefile
  head/x11/xorgproto/distinfo
  head/x11/xorgproto/files/
  head/x11/xorgproto/files/patch-man_Xprint.man
  head/x11/xorgproto/pkg-descr
  head/x11/xorgproto/pkg-plist
  head/x11/xproto/
  head/x11/xproxymanagementprotocol/
  head/x11/xrestop/Makefile
  head/x11/xrx/Makefile
  head/x11/xscope/Makefile
  head/x11/xsel/Makefile
  head/x11/xset/Makefile
  head/x11/xterm/Makefile
  head/x11/xwininfo/Makefile
  head/x11/xwinwrap/Makefile
  head/x11-drivers/xf86-input-acecad/Makefile
  head/x11-drivers/xf86-input-egalax/Makefile
  head/x11-drivers/xf86-input-elographics/Makefile
  head/x11-drivers/xf86-input-evdev/Makefile
  head/x11-drivers/xf86-input-fpit/Makefile
  head/x11-drivers/xf86-input-hyperpen/Makefile
  head/x11-drivers/xf86-input-joystick/Makefile
  head/x11-drivers/xf86-input-keyboard/Makefile
  head/x11-drivers/xf86-input-libinput/Makefile
  head/x11-drivers/xf86-input-mouse/Makefile
  head/x11-drivers/xf86-input-mutouch/Makefile
  head/x11-drivers/xf86-input-penmount/Makefile
  head/x11-drivers/xf86-input-synaptics/Makefile
  head/x11-drivers/xf86-input-vmmouse/Makefile
  head/x11-drivers/xf86-input-void/Makefile
  head/x11-drivers/xf86-input-wacom/Makefile
  head/x11-drivers/xf86-video-amdgpu/Makefile
  head/x11-drivers/xf86-video-apm/Makefile
  head/x11-drivers/xf86-video-ark/Makefile
  head/x11-drivers/xf86-video-ast/Makefile
  head/x11-drivers/xf86-video-ati/Makefile
  head/x11-drivers/xf86-video-chips/Makefile
  head/x11-drivers/xf86-video-cirrus/Makefile
  head/x11-drivers/xf86-video-dummy/Makefile
  head/x11-drivers/xf86-video-geode/Makefile
  head/x11-drivers/xf86-video-glint/Makefile
  head/x11-drivers/xf86-video-i128/Makefile
  head/x11-drivers/xf86-video-i740/Makefile
  head/x11-drivers/xf86-video-intel/Makefile
  head/x11-drivers/xf86-video-mach64/Makefile
  head/x11-drivers/xf86-video-mga/Makefile
  head/x11-drivers/xf86-video-neomagic/Makefile
  head/x11-drivers/xf86-video-nv/Makefile
  head/x11-drivers/xf86-video-openchrome/Makefile
  head/x11-drivers/xf86-video-qxl/Makefile
  head/x11-drivers/xf86-video-r128/Makefile
  head/x11-drivers/xf86-video-rendition/Makefile
  head/x11-drivers/xf86-video-s3/Makefile
  head/x11-drivers/xf86-video-s3virge/Makefile
  head/x11-drivers/xf86-video-savage/Makefile
  head/x11-drivers/xf86-video-scfb/Makefile
  head/x11-drivers/xf86-video-siliconmotion/Makefile
  head/x11-drivers/xf86-video-sis/Makefile
  head/x11-drivers/xf86-video-sunffb/Makefile
  head/x11-drivers/xf86-video-tdfx/Makefile
  head/x11-drivers/xf86-video-trident/Makefile
  head/x11-drivers/xf86-video-tseng/Makefile
  head/x11-drivers/xf86-video-vesa/Makefile
  head/x11-drivers/xf86-video-vmware/Makefile
  head/x11-drivers/xf86-video-voodoo/Makefile
  head/x11-drivers/xorgxrdp/Makefile
  head/x11-fm/rox-filer/Makefile
  head/x11-fonts/Makefile
  head/x11-fonts/bdftopcf/Makefile
  head/x11-fonts/fontcacheproto/
  head/x11-fonts/fontsproto/
  head/x11-fonts/fonttosfnt/Makefile
  head/x11-fonts/libFS/Makefile
  head/x11-fonts/libXfont/Makefile
  head/x11-fonts/libXfont2/Makefile
  head/x11-fonts/libXfontcache/Makefile
  head/x11-fonts/libXft/Makefile
  head/x11-fonts/libfontenc/Makefile
  head/x11-fonts/mkfontscale/Makefile
  head/x11-fonts/xf86bigfontproto/
  head/x11-servers/Xfstt/Makefile
  head/x11-servers/xorg-dmx/Makefile
  head/x11-servers/xorg-server/Makefile
  head/x11-themes/xcursor-themes/Makefile
  head/x11-toolkits/gtk12/Makefile
  head/x11-toolkits/lesstif/Makefile
  head/x11-toolkits/libXaw/Makefile
  head/x11-toolkits/libXmu/Makefile
  head/x11-toolkits/libXt/Makefile
  head/x11-toolkits/qt4-gui/Makefile
  head/x11-wm/awesome/Makefile
  head/x11-wm/compiz/Makefile
  head/x11-wm/compiz-plugins-extra/Makefile
  head/x11-wm/compiz-plugins-main/Makefile
  head/x11-wm/compiz-plugins-unsupported/Makefile
  head/x11-wm/e16/Makefile
  head/x11-wm/fluxbox/Makefile
  head/x11-wm/fluxter/Makefile
  head/x11-wm/transset/Makefile
  head/x11-wm/wmii/Makefile
  head/x11-wm/wmname/Makefile
Comment 20 Niclas Zeising freebsd_committer freebsd_triage 2018-07-31 18:45:23 UTC
Committed.  Please let this PR hang around for a day or two in case there's fallout.
Comment 21 CL Moonriver 2018-08-01 16:38:31 UTC
I'm not sure if this qualifies as a bug or not, but since this change, I cannot update my system using portmaster -a

===>  Installing for xorgproto-2018.4
===>  Checking if xorgproto already installed
===>   Registering installation for xorgproto-2018.4 as automatic
Installing xorgproto-2018.4...
pkg-static: xorgproto-2018.4 conflicts with glproto-1.4.17 (installs files into the same place).  Problematic file: /usr/local/include/GL/glxint.h
*** Error code 70

Stop.
make: stopped in /usr/ports/x11/xorgproto

===>>> Installation of xorgproto-2018.4 (x11/xorgproto) failed
===>>> Aborting update

===>>> Update for x11/xorgproto failed
===>>> Aborting update

I understand what the above error message means, of course, but I'm a little new here, so I'm hesitant to try something like just deleting the conflicting files by hand and then attempting the upgrade again unless I get some advice first. Thoughts?

Thanks
Comment 22 Adam Weinberger freebsd_committer freebsd_triage 2018-08-01 16:57:19 UTC
When in doubt, make /usr/ports/UPDATING your first stop for troubleshooting. It's where instructions for avoiding pitfalls like this one are added.

  20180731:
    AFFECTS: users of x11/xorg and all ports with USE_XORG=*proto
    AUTHOR: zeising@FreeBSD.org

    The xorg *proto packages have all been merged into one package,
    x11/xorgproto.  This might cause issues with upgrading.  If you
    get conflicts between xorgproto and old *proto packages, please
    remove the old package and install xorgproto again.

    In order to remove all orphaned ports, including all *proto port,
    the following can be used after the ports tree has been updated:
    pkg version -l \? | cut -f 1 -w | grep -v compat | xargs pkg delete -fy

Hope this helps!
Comment 23 CL Moonriver 2018-08-01 17:08:51 UTC
(In reply to Adam Weinberger from comment #22)

Ah. Thanks for the help :) I guess I should read the handbook a little close. Somehow I missed that part about reading UPDATING, despite the fact that it's enclosed in in a one of those red lined Important boxes.

I'll put my dunce cap on and go sit in the corner for a while ;)

Thanks again for your help :)
Comment 24 Citroën 2018-08-02 18:30:06 UTC
Still no luck as of 2018-08-02.

Updating to mentioned xorgproto still conflicts with installation at same location of a file from glproto. Deinstalling glproto requires deinstalling 49 other packages. After which trying to install xorgproto still stumbles across a similar problem, this time with a file from xproto (not the same file). But then deinstalling xproto requires deinstalling 227 packages!

Hope I won't have to deinstall/reinstall every port.

Thx for your good work. This is a logical but huge change, because it affects so many of ports.
Comment 25 Niclas Zeising freebsd_committer freebsd_triage 2018-08-02 18:33:17 UTC
(In reply to Citroën from comment #24)

How are you installing, from packages using pkg, building from ports, or using a tool like portmaster or similar?
Have you looked at the UPDATING entry and followed the instructions there?
Comment 26 Frank Reisert 2018-08-04 20:53:30 UTC
(In reply to Niclas Zeising from comment #25)

Hello Niclas,

sorry to bump in here just like that but I'm also hit by this 
update.

Following UPDATES (fortunately) not entirely to the dot I've run

pkg version -l \? | cut -f 1 -w | grep -v compat | xargs pkg delete -n

Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 347 packages (of 0 packages in the universe):

...

347 packages is much more than just the *proto stuff and goes down to 
stellarium, minidlna, lumina-*, texlive-* etc. -- many of them not being 
automatics. You will understand that mentioned procedure is a no-go in 
this case. I won't have removed half the system in order to recompile it 
afterwards -- I'm using ports, don't install packages via pkg.

Please advise how to solve this in a less destructive way. Thank you!

Kind regards
Frank
Comment 27 Niclas Zeising freebsd_committer freebsd_triage 2018-08-04 21:35:17 UTC
Why are you not following the instructions as written?
pkg delete -f removes a package even if there's still dependencies on it.  This means pkg will remove the *proto packages without the dependencies.

From UPDATING:
  In order to remove all orphaned ports, including all *proto port,
  the following can be used after the ports tree has been updated:
  pkg version -l \? | cut -f 1 -w | grep -v compat | xargs pkg delete -fy

If you want to have control, you can do pkg delete -f without the y at the end to get the list (-y implies yes).

Regards
-- 
Niclas
Comment 28 Frank Reisert 2018-08-04 22:05:45 UTC
(In reply to Niclas Zeising from comment #27)

>Why are you not following the instructions as written?

Because many times I'm plain stupid. I've misunderstood man 8 pkg-delete (-f 
section). I'm sorry for that.

Thank you very much for the explanation and much more for even taking 
your time!

Kind regards
Frank
Comment 29 Niclas Zeising freebsd_committer freebsd_triage 2018-08-06 20:50:53 UTC
(In reply to Frank Reisert from comment #28)

Hi!
I just want to apologize, I came off a little bit too harsh with the first comment about not reading instructions.

Regarding pkg -f, the instructions can perhaps be improved a little as well, it is not 100% clear that it means dependencies will be left intact.

Regards
-- 
Niclas
Comment 30 Niclas Zeising freebsd_committer freebsd_triage 2018-08-06 20:58:13 UTC
There has been a week, I think most issues have been fixed.
I'm closing this PR, if there's any further issues down the line, please open a new PR, or send me or the x11@ mailing list an e-mail.
Thanks!
Regards
-- 
Niclas
Comment 31 Kubilay Kocak freebsd_committer freebsd_triage 2018-08-07 00:11:02 UTC
Assign to committer that resolved.