lingnand / VIMonad

Bringing VIM philosophy to window management
vimonad.lynnard.me
70 stars 3 forks source link

XMonadContrib in need of update/rebase (I think) #7

Closed torrancew closed 8 years ago

torrancew commented 9 years ago

@lynnard Recently, arch updated GHC to 7.8.10, and afterwards, I have been unable to build VIMonad. Machines still running 7.8.4 are still able to compile changes fine, and I briefly attempted to patch files as they emitted errors, but there were quite a few, some of which are modified for VIMonad functionality. If you have any docs available on how you imported and patched against upstream to begin with, I'd be happy to attempt the equivalent of a git rebase (and of course, try to fix the resulting conflicts). I'm not remotely familiar with darcs.

lingnand commented 9 years ago

Yes, I am aware of the problem. 7.8.10 breaks quite a few other packages in Hackage as well so I didn't opt to update on my machine. The refactoring would definitely be something in the roadmap - I'll probably do it when I make sure the packages VIMonad depends on are fully functional under 7.8.10.

In the mean time your best bet is probably adding ghc to IgnorePkg in your pacman.conf. Or of course you are free to play around with fixing it and I'll accept a merge request if you get it working.

torrancew commented 8 years ago

@lynnard I don't know if you've noticed yet, but we are now orphaned, by and large. Recent updates have broken the 7.8.4 version of ghc: /usr/lib/ghc-7.8.4/bin/ghc: error while loading shared libraries: libncursesw.so.5: cannot open shared object file: No such file or directory

I briefly attempted to use GHC 7.10 to build 7.8 with the version of ncurses now distributed by Arch, but it appears that the new GHC refuses to compile the older one.

lingnand commented 8 years ago

All right, I'll look into it and fix it asap.

lingnand commented 8 years ago

@torrancew Sorry for the long wait, the source code has been updated (it actually takes very little time..!) Let me know if there are any problems, otherwise you can close the issue.

torrancew commented 8 years ago

@lynnard thank you!

I'm having a very strange issue after the update. I have one commit on top of your changes, to set the default terminal to urxvt. There are some diffs to my .xmonad/xmonad.hs, that I can post if needed. The error I'm getting is as follows:

$ xmonad --recompile
X Error of failed request:  BadAccess (attempt to access private resource denied)
  Major opcode of failed request:  2 (X_ChangeWindowAttributes)
  Serial number of failed request:  7
  Current serial number in output stream:  8

I've tried to debug this further, but it's a bit unclear to me what exactly is failing, or how to get better tracing of the problem. If you have any ideas or suggestions, I'd thoroughly appreciate them!

lingnand commented 8 years ago

Is this the entire output? Make sure you haven't missed any haskell compile errors (as this looks like a runtime error).

Also make sure you have recompiled both xmonad and xmonad-contrib inside the latest repo - following the README, that means cd into xmonad and XMonadContrib, and cabal install in each of them. Use force-reinstall if necessary. Also, as a safe measure you should remove the dist directory in both cases (that might contain old build files that have become irrelevant). Only then call xmonad --recompile to recompile your final binary.

torrancew commented 8 years ago

@lynnard Thanks. I've been pretty cautious - I don't actually use cabal/ghc/haskell for any other software at this time, so my typical workflow is:

$ rm -rf ~/.cabal ~/.ghc
$ cabal update
$ cd xmonad
$ cabal install
$ cd ../XMonadContrib
$ cabal install
$ xmonad --recompile

I will attempt removing the dist directory, and see if that helps. Thanks!

torrancew commented 8 years ago

@lynnard Removing dist and recompiling both components solved this - thank you!