gentoo-haskell / hackport

A command line tool to generate Gentoo ebuilds from Hackage packages.
GNU General Public License v3.0
53 stars 21 forks source link

hackport no longer working #45

Closed hololeap closed 5 years ago

hololeap commented 5 years ago

No matter what, hackport fails when I try to use merge or make-ebuild. I have tried deleting ~/.hackport, ~/.cabal, and deleting and re-cloning gentoo-haskell. I have also tried using app-portage/hackport-0.5.6 and app-portage/hackport-9999. Nothing seems to work. Here is the error I am getting:

hackport: Assertion failed
CalStack (from HasCallStack):
  assert, called at cabal/Cabal/Distribution/Simple/PackageIndex.hs:201:30 in main:Distribution.Simple.PackageIndex
  mkPackageIndex, called at cabal/Cabal/Distribution/Simple/PackageIndex.hs:215:17 in main:Distribution.Simple.PackageIndex

My guess is that the current commit of the cabal submodule is no longer compatible with Hackage.

solpeth commented 5 years ago

Which package are you trying to merge that fails?

hololeap commented 5 years ago

I tried several and they all failed. I haven't found one that works yet.

solpeth commented 5 years ago

@hololeap do you have any specific packages that failed so I can try and reproduce this? I've had no issues using hackport today.

hololeap commented 5 years ago

I just tried with hackport-0.5.6:

synthesizer-filter kan-extensions lens

All three give me the same error:

CallStack (from HasCallStack):
  assert, called at cabal/Cabal/Distribution/Simple/PackageIndex.hs:201:30 in main:Distribution.Simple.PackageIndex
  mkPackageIndex, called at cabal/Cabal/Distribution/Simple/PackageIndex.hs:215:17 in main:Distribution.Simple.PackageIndex

Edit: I just tried with hackport-9999 and all three of these packages gave the same error as above.

solpeth commented 5 years ago

@hololeap i'm sorry, I can't seem to reproduce this at all. I'll try to figure out what I can.

hololeap commented 5 years ago

I am also unable to reproduce this on another system. Very strange. I will investigate.

trofi commented 5 years ago

How about hackport-9999? Maybe we should just cut a new release.

hololeap commented 5 years ago

Yeah, I had the same issues with the live version as well. I am rebuilding everything with ghc-8.4.4 and also FEATURES=test just to make sure everything is working correctly. I will then check to see if hackport-9999 is working.

Update:

The rebuild finished and hackport-9999 still gives me the error.

kinetik@triton ~ $ rm -r .hackport/

kinetik@triton ~ $ rm -r .cabal/

kinetik@triton ~ $ git clone https://github.com/gentoo-haskell/gentoo-haskell
Cloning into 'gentoo-haskell'...
remote: Enumerating objects: 302, done.
remote: Counting objects: 100% (302/302), done.
remote: Compressing objects: 100% (172/172), done.
remote: Total 213044 (delta 152), reused 246 (delta 130), pack-reused 212742
Receiving objects: 100% (213044/213044), 48.86 MiB | 1.65 MiB/s, done.
Resolving deltas: 100% (115997/115997), done.
Checking out files: 100% (8671/8671), done.

kinetik@triton ~ $ cd gentoo-haskell/

kinetik@triton ~/gentoo-haskell $ /usr/bin/hackport --overlay-path="$PWD" --portage-path="/var/db/portage/repos/gentoo" update
Downloading the latest package list from hackage.haskell.org

kinetik@triton ~/gentoo-haskell $ /usr/bin/hackport --overlay-path="$PWD" --portage-path="/var/db/portage/repos/gentoo" merge lens
hackport: Assertion failed
CallStack (from HasCallStack):
  assert, called at cabal/Cabal/Distribution/Simple/PackageIndex.hs:201:30 in main:Distribution.Simple.PackageIndex
  mkPackageIndex, called at cabal/Cabal/Distribution/Simple/PackageIndex.hs:215:17 in main:Distribution.Simple.PackageIndex
kinetik@triton ~/gentoo-haskell $ /usr/bin/hackport --overlay-path="$PWD" --portage-path="/var/db/portage/repos/gentoo" -V
hackport version 0.5.6.9999
using cabal-install 2.1.0.0 and the Cabal library version 1.9999

kinetik@triton ~/gentoo-haskell $ qlop -l hackport | tail -1
Wed Nov  7 16:51:57 2018 >>> app-portage/hackport-9999

kinetik@triton ~/gentoo-haskell $ emerge --info hackport
Portage 2.3.51 (python 3.6.5-final-0, default/linux/amd64/17.1/desktop/plasma/systemd, gcc-8.2.0, glibc-2.27-r6, 4.18.16-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.18.16-gentoo-x86_64-AMD_Athlon-tm-_II_X4_630_Processor-with-gentoo-2.4.1
KiB Mem:     4038840 total,    396792 free
KiB Swap:    4194300 total,   4194300 free
Timestamp of repository gentoo: Thu, 08 Nov 2018 00:45:01 +0000
sh bash 4.4_p12
ld GNU ld (Gentoo 2.30 p5) 2.30.0
distcc 3.2rc1 x86_64-pc-linux-gnu [disabled]
ccache version 3.3.4 [disabled]
app-shells/bash:          4.4_p12::gentoo
dev-java/java-config:     2.2.0-r4::gentoo
dev-lang/perl:            5.24.3-r1::gentoo
dev-lang/python:          2.7.15::gentoo, 3.6.5::gentoo
dev-util/ccache:          3.3.4-r1::gentoo
dev-util/cmake:           3.9.6::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.4.1-r2::gentoo
sys-apps/sandbox:         2.13::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69-r4::gentoo
sys-devel/automake:       1.11.6-r3::gentoo, 1.15.1-r2::gentoo
sys-devel/binutils:       2.30-r4::gentoo
sys-devel/gcc:            8.2.0-r4::gentoo
sys-devel/gcc-config:     2.0::gentoo
sys-devel/libtool:        2.4.6-r3::gentoo
sys-devel/make:           4.2.1-r4::gentoo
sys-kernel/linux-headers: 4.13::gentoo (virtual/os-headers)
sys-libs/glibc:           2.27-r6::gentoo
Repositories:

gentoo
    location: /var/db/portage/repos/gentoo
    sync-type: webrsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000

local
    location: /var/db/portage/repos/local
    masters: gentoo

abendbrot
    location: /var/db/portage/repos/abendbrot
    sync-type: laymansync
    sync-uri: https://github.com/stefan-gr/abendbrot.git
    masters: gentoo
    priority: 50

bar
    location: /var/db/portage/repos/bar
    sync-type: laymansync
    sync-uri: https://github.com/tokiclover/bar-overlay.git
    masters: gentoo
    priority: 50

graaff
    location: /var/db/portage/repos/graaff
    sync-type: laymansync
    sync-uri: https://anongit.gentoo.org/git/dev/graaff.git
    masters: gentoo haskell
    priority: 50

haskell
    location: /var/db/portage/repos/haskell
    sync-type: laymansync
    sync-uri: https://github.com/hololeap/gentoo-haskell.git
    masters: gentoo
    priority: 50

steam-overlay
    location: /var/db/portage/repos/steam-overlay
    sync-type: laymansync
    sync-uri: https://github.com/anyc/steam-overlay.git
    masters: gentoo
    priority: 50

torbrowser
    location: /var/db/portage/repos/torbrowser
    sync-type: laymansync
    sync-uri: https://github.com/MeisterP/torbrowser-overlay.git
    masters: gentoo
    priority: 50

Installed sets: @android, @base, @clamav, @debug, @dev, @dev-gentoo, @dia, @ebook, @elasticsearch, @erlang, @fonts, @gimp, @haskell, @hax, @kde5, @kernel, @latex, @net-extras, @networking, @openvpn, @pidgin, @printing, @screensaver, @steam, @wireless, @x11, @xfce
ABI="amd64"
ABI_X86="32 64"
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
ACCEPT_PROPERTIES="*"
ACCEPT_RESTRICT="*"
ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci"
ANT_HOME="/usr/share/ant"
APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias"
ARCH="amd64"
AUTOCLEAN="yes"
BOOTSTRAP_USE="cxx unicode internal-glib split-usr python_targets_python3_6 python_targets_python2_7 multilib hardened pic xtpax -jit -orc"
BROOT=""
CABAL_EXTRA_BUILD_FLAGS="-j1"
CABAL_EXTRA_CONFIGURE_FLAGS="-O0 --ghc-option=-msse2"
CALLIGRA_FEATURES="karbon plan sheets stage words"
CANON_PRINTERS="mx410"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=amdfam10"
CFLAGS_amd64="-m64"
CFLAGS_x32="-mx32"
CFLAGS_x86="-m32"
CHOST="x86_64-pc-linux-gnu"
CHOST_amd64="x86_64-pc-linux-gnu"
CHOST_x32="x86_64-pc-linux-gnux32"
CHOST_x86="i686-pc-linux-gnu"
CLEAN_DELAY="5"
COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog"
COLLISION_IGNORE="/lib/modules/*"
COLORFGBG="15;0"
COLORTERM="truecolor"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/easy-rsa /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CPU_FLAGS_X86="3dnow 3dnowext mmx mmxext popcnt sse sse2 sse3 sse4a"
CXXFLAGS="-O2 -pipe -march=amdfam10"
DBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/1000/bus"
DCC_EMAILLOG_WHOM_TO_BLAME=""
DEFAULT_ABI="amd64"
DESKTOP_SESSION="plasma"
DISPLAY=":0"
DISTCC_ENABLE_DISCREPANCY_EMAIL=""
DISTCC_FALLBACK="1"
DISTCC_SAVE_TEMPS="0"
DISTCC_SSH=""
DISTCC_TCP_CORK=""
DISTCC_VERBOSE="0"
DISTDIR="/var/db/portage/distfiles"
EDITOR="/usr/bin/vi"
ELIBC="glibc"
EMERGE_DEFAULT_OPTS="--verbose --load-average 4.0 --quiet-build --keep-going"
EMERGE_WARNING_DELAY="10"
ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
EPREFIX=""
EROOT="/"
ESYSROOT="/"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs candy config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox network-sandbox-proxy news parallel-fetch parallel-install preserve-libs protect-owned sandbox selinux sesandbox sfperms strict strict-keepdir suidctl unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync webrsync-gpg xattr"
FETCHCOMMAND="wget -t 3 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}""
FETCHCOMMAND_RSYNC="rsync -avP "${URI}" "${DISTDIR}/${FILE}""
FETCHCOMMAND_SFTP="bash -c "x=\${2#sftp://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port= ; eval \"declare -a ssh_opts=(\${3})\" ; exec sftp \${port:+-P \${port}} \"\${ssh_opts[@]}\" \"\${host}:/\${x#*/}\" \"\$1\"" sftp "${DISTDIR}/${FILE}" "${URI}" "${PORTAGE_SSH_OPTS}""
FETCHCOMMAND_SSH="bash -c "x=\${2#ssh://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port= ; exec rsync --rsh=\"ssh \${port:+-p\${port}} \${3}\" -avP \"\${host}:/\${x#*/}\" \"\$1\"" rsync "${DISTDIR}/${FILE}" "${URI}" "${PORTAGE_SSH_OPTS}""
FFLAGS="-O2 -pipe"
GCC_SPECS=""
GDMSESSION="plasma"
GDM_LANG="en_US.utf8"
GENTOO_MIRRORS="https://gentoo.osuosl.org/ https://mirrors.lug.mtu.edu/gentoo"
GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx"
GRUB_PLATFORMS="pc"
GSETTINGS_BACKEND="dconf"
GS_LIB="/home/kinetik/.fonts"
GTK_MODULES="canberra-gtk-module"
HOME="/home/kinetik"
INFOPATH="/usr/share/gcc-data/x86_64-pc-linux-gnu/8.2.0/info:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.30/info:/usr/share/info"
INPUT_DEVICES="evdev"
IUSE_IMPLICIT="abi_x86_64 prefix prefix-chain prefix-guest"
JAVAC="/etc/java-config-2/current-system-vm/bin/javac"
JAVA_HOME="/etc/java-config-2/current-system-vm"
JDK_HOME="/etc/java-config-2/current-system-vm"
KDE_FULL_SESSION="true"
KDE_SESSION_UID="1000"
KDE_SESSION_VERSION="5"
KERNEL="linux"
KONSOLE_DBUS_SERVICE=":1.33"
KONSOLE_DBUS_SESSION="/Sessions/3"
KONSOLE_PROFILE_NAME="Coolzies"
L10N="en en_US en-US"
LANG="en_US.UTF-8"
LANGUAGE="en_US"
LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text"
LC_COLLATE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_MESSAGES="C"
LC_MONETARY="en_US.UTF-8"
LC_NUMERIC="C"
LC_TIME="en_CA.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LDFLAGS_amd64="-m elf_x86_64"
LDFLAGS_x32="-m elf32_x86_64"
LDFLAGS_x86="-m elf_i386"
LESS="-R -M --shift 5"
LESSOPEN="|lesspipe %s"
LIBDIR_amd64="lib64"
LIBDIR_x32="libx32"
LIBDIR_x86="lib"
LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer"
LINGUAS="en en_US en-US"
LOGNAME="kinetik"
LS_COLORS="rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.cfg=00;32:*.conf=00;32:*.diff=00;32:*.doc=00;32:*.ini=00;32:*.log=00;32:*.patch=00;32:*.pdf=00;32:*.ps=00;32:*.tex=00;32:*.txt=00;32:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:"
MAIL="/var/mail/kinetik"
MAKEOPTS="-j4"
MANPAGER="manpager"
MANPATH="/etc/java-config-2/current-system-vm/man:/usr/share/gcc-data/x86_64-pc-linux-gnu/8.2.0/man:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.30/man:/usr/lib/llvm/7/share/man:/etc/java-config-2/current-system-vm/man/:/usr/local/share/man:/usr/share/man:/usr/share/rust-1.29.2/man:/usr/lib64/erlang/man"
MULTILIB_ABIS="amd64 x86"
MULTILIB_STRICT_DENY="64-bit.*shared object"
MULTILIB_STRICT_DIRS="/lib32 /lib /usr/lib32 /usr/lib /usr/kde/*/lib32 /usr/kde/*/lib /usr/qt/*/lib32 /usr/qt/*/lib /usr/X11R6/lib32 /usr/X11R6/lib"
MULTILIB_STRICT_EXEMPT="(perl5|gcc|gcc-lib|binutils|eclipse-3|debug|portage|udev|systemd|clang|python-exec|llvm)"
NETBEANS="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml"
NINJAOPTS="-j4"
NINJA_PARALLEL_JOBS="4"
OFFICE_IMPLEMENTATION="libreoffice"
OLDPWD="/home/kinetik"
OPENCL_PROFILE="nvidia"
OPENGL_PROFILE="nvidia"
PACKAGE_MANAGER="portage"
PAGER="/usr/bin/less"
PATH="/usr/lib/llvm/7/bin:/usr/local/bin:/usr/bin:/bin:/opt/bin"
PAX_MARKINGS="XT"
PHP_TARGETS="php5-6 php7-1"
PKGDIR="/var/db/portage/packages"
POLICY_TYPES="strict targeted"
PORTAGE_ARCHLIST="alpha amd64 amd64-fbsd amd64-linux arm arm-linux arm64 arm64-linux hppa ia64 m68k m68k-mint mips ppc ppc-aix ppc-macos ppc64 ppc64-linux s390 sh sparc sparc-solaris sparc64-solaris x64-cygwin x64-macos x64-solaris x86 x86-cygwin x86-fbsd x86-linux x86-macos x86-solaris x86-winnt"
PORTAGE_BIN_PATH="/usr/lib/portage/python3.6"
PORTAGE_COMPRESS_EXCLUDE_SUFFIXES="css gif htm[l]? jp[e]?g js pdf png"
PORTAGE_CONFIGROOT="/"
PORTAGE_DEBUG="0"
PORTAGE_DEPCACHEDIR="/var/cache/edb/dep"
PORTAGE_ELOG_CLASSES="log warn error"
PORTAGE_ELOG_MAILFROM="portage@localhost"
PORTAGE_ELOG_MAILSUBJECT="[portage] ebuild log for ${PACKAGE} on ${HOST}"
PORTAGE_ELOG_MAILURI="root"
PORTAGE_ELOG_SYSTEM="save_summary:log,warn,error,qa echo"
PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS="5"
PORTAGE_FETCH_RESUME_MIN_SIZE="350K"
PORTAGE_FETCH_T="portage_fetch_t"
PORTAGE_GID="250"
PORTAGE_GPG_DIR="/var/lib/gentoo/gkeys/keyrings/gentoo/release/"
PORTAGE_GPG_SIGNING_COMMAND="gpg --sign --digest-algo SHA256 --clearsign --yes --default-key "${PORTAGE_GPG_KEY}" --homedir "${PORTAGE_GPG_DIR}" "${FILE}""
PORTAGE_INST_GID="0"
PORTAGE_INST_UID="0"
PORTAGE_INTERNAL_CALLER="1"
PORTAGE_OVERRIDE_EPREFIX=""
PORTAGE_PYM_PATH="/usr/lib64/python3.6/site-packages"
PORTAGE_PYTHONPATH="/usr/lib64/python3.6/site-packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_RSYNC_RETRIES="-1"
PORTAGE_SANDBOX_T="portage_sandbox_t"
PORTAGE_SYNC_STALE="30"
PORTAGE_T="portage_t"
PORTAGE_TMPDIR="/var/tmp"
PORTAGE_VERBOSE="1"
PORTAGE_WORKDIR_MODE="0700"
PORTAGE_XATTR_EXCLUDE="btrfs.* security.evm security.ima        security.selinux system.nfs4_acl user.apache_handler    user.Beagle.* user.dublincore.* user.mime_encoding user.xdg.*"
PORT_LOGDIR_CLEAN="find "${PORT_LOGDIR}" -type f ! -name "summary.log*" -mtime +7 -delete"
POSTGRES_TARGETS="postgres9_5 postgres10"
PROFILEHOME=""
PROFILE_IS_HARDENED="1"
PROFILE_ONLY_VARIABLES="ARCH ELIBC IUSE_IMPLICIT KERNEL USERLAND USE_EXPAND_IMPLICIT USE_EXPAND_UNPREFIXED USE_EXPAND_VALUES_ARCH USE_EXPAND_VALUES_ELIBC USE_EXPAND_VALUES_KERNEL USE_EXPAND_VALUES_USERLAND"
PWD="/home/kinetik/gentoo-haskell"
PYTHONDONTWRITEBYTECODE="1"
PYTHON_SINGLE_TARGET="python3_6"
PYTHON_TARGETS="python2_7 python3_6"
QT_AUTO_SCREEN_SCALE_FACTOR="0"
QT_GRAPHICSSYSTEM="raster"
QT_SCREEN_SCALE_FACTORS="VGA-0=1;DVI-D-0=1;HDMI-0=1;DVI-D-1=1;"
RESUMECOMMAND="wget -c -t 3 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}""
RESUMECOMMAND_RSYNC="rsync -avP "${URI}" "${DISTDIR}/${FILE}""
RESUMECOMMAND_SSH="bash -c "x=\${2#ssh://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port= ; exec rsync --rsh=\"ssh \${port:+-p\${port}} \${3}\" -avP \"\${host}:/\${x#*/}\" \"\$1\"" rsync "${DISTDIR}/${FILE}" "${URI}" "${PORTAGE_SSH_OPTS}""
ROOT="/"
ROOTPATH="/usr/lib/llvm/7/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin"
RPMDIR="/usr/portage/rpm"
RUBY_TARGETS="ruby23"
SESSION_MANAGER="local/triton:@/tmp/.ICE-unix/2458,unix/triton:/tmp/.ICE-unix/2458"
SHELL="/bin/bash"
SHELL_SESSION_ID="c1dcb612a320400c8dcb7cfa2a495002"
SHLVL="2"
SSH_ASKPASS="/usr/bin/ksshaskpass"
SYMLINK_LIB="no"
SYSROOT="/"
TERM="xterm-256color"
TOR_CONTROL_HOST="127.0.0.1"
TOR_CONTROL_PASSWD=""secret""
TOR_CONTROL_PORT="9051"
TWISTED_DISABLE_WRITING_OF_PLUGIN_CACHE="1"
UNCACHED_ERR_FD=""
UNINSTALL_IGNORE="/lib/modules/* /var/run /var/lock"
USE="X a52 aac acl acpi activities alsa amd64 apparmor audit branding bzip2 cairo cdda cdr cracklib crypt cups cxx dbus declarative dts dvd dvdr egl emboss encode exif fam ffmpeg flac gif git glamor gold graphite hardened iconv icu idn ipv6 jack jpeg kde kipi kwallet lcms ldap libedit libnotify libtirpc lm_sensors lzma mad mdadm mng mp3 mp4 mpeg multilib ncurses nptl odbc offensive ogg opengl openmp pam pango pcre pdf phonon pie plasma png policykit ppds pulseaudio qml qt5 rar readline rtlsdr s3tc samba seccomp selinux semantic-desktop spell ssl ssp startup-notification svg syslog systemd theora threads tiff truetype udev udisks uhd unicode upower usb user-session v4l vim-syntax vorbis wayland wext widgets wifi wireless wxwidgets x264 xattr xcb xcomposite xml xscreensaver xtpax xv xvid zlib" ABI_X86="32 64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon plan sheets stage words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="3dnow 3dnowext mmx mmxext popcnt sse sse2 sse3 sse4a" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="pc" INPUT_DEVICES="evdev" KERNEL="linux" L10N="en en_US en-US" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6 php7-1" POSTGRES_TARGETS="postgres9_5 postgres10" PYTHON_SINGLE_TARGET="python3_6" PYTHON_TARGETS="python2_7 python3_6" RUBY_TARGETS="ruby23" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
USER="kinetik"
USERLAND="GNU"
USE_EXPAND="ABI_MIPS ABI_PPC ABI_S390 ABI_X86 ALSA_CARDS APACHE2_MODULES APACHE2_MPMS CALLIGRA_EXPERIMENTAL_FEATURES CALLIGRA_FEATURES CAMERAS COLLECTD_PLUGINS CPU_FLAGS_ARM CPU_FLAGS_X86 CURL_SSL ELIBC ENLIGHTENMENT_MODULES FFTOOLS GPSD_PROTOCOLS GRUB_PLATFORMS INPUT_DEVICES KERNEL L10N LCD_DEVICES LIBREOFFICE_EXTENSIONS LIRC_DEVICES LLVM_TARGETS MONKEYD_PLUGINS NETBEANS_MODULES NGINX_MODULES_HTTP NGINX_MODULES_MAIL NGINX_MODULES_STREAM OFED_DRIVERS OFFICE_IMPLEMENTATION OPENMPI_FABRICS OPENMPI_OFED_FEATURES OPENMPI_RM PHP_TARGETS POSTGRES_TARGETS PYTHON_SINGLE_TARGET PYTHON_TARGETS QEMU_SOFTMMU_TARGETS QEMU_USER_TARGETS ROS_MESSAGES RUBY_TARGETS SANE_BACKENDS USERLAND UWSGI_PLUGINS VIDEO_CARDS VOICEMAIL_STORAGE XFCE_PLUGINS XTABLES_ADDONS"
USE_EXPAND_HIDDEN="ABI_MIPS ABI_PPC ABI_S390 CPU_FLAGS_ARM ELIBC KERNEL USERLAND"
USE_EXPAND_IMPLICIT="ARCH ELIBC KERNEL USERLAND"
USE_EXPAND_UNPREFIXED="ARCH"
USE_EXPAND_VALUES_ARCH="alpha amd64 amd64-fbsd amd64-linux arm arm64 hppa ia64 m68k m68k-mint mips ppc ppc64 ppc64-linux ppc-aix ppc-macos s390 sh sparc sparc64-solaris sparc-solaris x64-cygwin x64-macos x64-solaris x86 x86-cygwin x86-fbsd x86-linux x86-macos x86-solaris x86-winnt"
USE_EXPAND_VALUES_ELIBC="AIX bionic Cygwin Darwin DragonFly FreeBSD glibc HPUX Interix mingw mintlib musl NetBSD OpenBSD SunOS uclibc Winnt"
USE_EXPAND_VALUES_KERNEL="AIX Darwin FreeBSD freemint HPUX linux NetBSD OpenBSD SunOS Winnt"
USE_EXPAND_VALUES_USERLAND="BSD GNU"
USE_ORDER="env:pkg:conf:defaults:pkginternal:features:repo:env.d"
VIDEO_CARDS="nvidia"
VISUAL="/usr/bin/vi"
WINDOWID="46137351"
XAUTHORITY="/home/kinetik/.Xauthority"
XCURSOR_SIZE="24"
XCURSOR_THEME="breeze_cursors"
XDG_CONFIG_DIRS="/etc/xdg"
XDG_CURRENT_DESKTOP="KDE"
XDG_DATA_DIRS="/usr/local/share:/usr/share"
XDG_GREETER_DATA_DIR="/var/lib/lightdm-data/kinetik"
XDG_RUNTIME_DIR="/run/user/1000"
XDG_SEAT="seat0"
XDG_SEAT_PATH="/org/freedesktop/DisplayManager/Seat0"
XDG_SESSION_DESKTOP="plasma"
XDG_SESSION_ID="c1"
XDG_SESSION_PATH="/org/freedesktop/DisplayManager/Session0"
XDG_SESSION_TYPE="x11"
XDG_VTNR="7"
XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
dbdir="/var/db/portage"
p="4"

=================================================================
                        Package Settings
=================================================================

app-portage/hackport-9999::haskell was built with the following:
USE="test" ABI_X86="(64)"
hololeap commented 5 years ago

This comment was in the source file that is referenced in the stack trace:

  -- If you see this invariant failing (ie the assert in mkPackageIndex below)
  -- then one thing to check is if it is happening in fromList. Check if the
  -- second list above (the sort [...] bit) is ending up with duplicates. This
  -- has been observed in practice once due to a messed up ghc-pkg db. How/why
  -- it became messed up was not discovered.

(Source)

This actually lines up exactly with what is happening on my system, so apparently it could be a "messed up" ghc-pkg db... But, I don't know how to check for this or how to fix it. I unmerged everything Haskell-related before doing this latest update, but I guess that wouldn't necessarily reset the db.

Update:

I unmerged everything and made absolutely sure that there were no traces of ghc-pkg, cabal, or hackport (including databases, config files/directories, etc.) Somehow, the problem still hasn't gone away. It's pretty baffling, especially considering that the other computer of mine doesn't have the issue.

hololeap commented 5 years ago

I commented out all CABAL_* lines in make.conf as well as everything Haskell-related in package.use and package.env, unmerged everything, thoroughly scoured my system for any traces of Haskell-related stuff and removed them (I did find an orphaned directory from ghc-8.4.3), then ran emerge -1 hackport. FINALLY it works again.

I have no idea what caused this bug. I will be incrementally uncommenting my build flags and see if anything triggers it again.

solpeth commented 5 years ago

That's great that you found it. If you do find what the issue was I'd be interested to know in case this happens again.

hololeap commented 5 years ago

Well, at this point it looks like CABAL_EXTRA_CONFIGURE_FLAGS="-O0" was the culprit, as strange as that may seem. All of the other package.use, package.env, and CABAL_EXTRA_CONFIGURE_FLAGS are restored to where they are before, and I removed -O0. Then, I rebuilt hackport-9999 and now it is working again.

solpeth commented 5 years ago

I'm going to close this @hololeap , unless you believe this should remain open. I'm glad you found the issue!