Closed ocharles closed 8 years ago
I just installed those packages in my user`s profile. Is that not good enough a solution?
I don't think so, especially not without any documentation to even suggest that this is neccesary. Xmonad calls GHC from $PATH so perhaps patching that to use a system GHC wrapper is the way to go.
Either way, users should be enable to enable xmonad and then write their configuration without any extra strips, IMO.
Ideally, one would specify his path to xmonad.hs and the builder would produce the resulting binary (in nix store). There would be no need for wrapping after that (or even GHC).
That would require per-user NixOS configuration though, or we would be further emphasising a single user OS.
Couldn't xmonad.enable just add something like:
(with haskellPackages; [(ghcWithPackagesOld(self: with self;[xmonad xmonadContrib xmonadExtras]))])
to environment.systemPackages?
Xmoad should not need anything in $PATH to recompile its own config file.
Edward Tjörnhammar notifications@github.com wrote:
Couldn't xmonad.enable just add something like:
(with haskellPackages; [(ghcWithPackagesOld(self: with self;[xmonad xmonadContrib xmonadExtras]))])
to environment.systemPackages?
Reply to this email directly or view it on GitHub: https://github.com/NixOS/nixos/issues/194#issuecomment-29552107
Can someone describe how best to get xmonad working at the moment?
% xmonad --recompile
Error detected while loading xmonad configuration file: /home/ellis/.xmonad/xmonad.hs
xmonad.hs:51:8:
Could not find module `XMonad.Util.Run'
Use -v to see a list of the files searched for.
Please check the file for errors.
In configuration.nix, I have the following xmonad-related settings:
services.xserver = {
enable = true;
windowManager.xmonad.enable = true;
windowManager.xmonad.enableContribAndExtras = true;
};
environment.systemPackages = with pkgs; [
haskellPackages.ghc
haskellPackages.haskellPlatform
dmenu
haskellPackages.xmobar
haskellPackages.xmonad
haskellPackages.xmonadContrib
haskellPackages.xmonadExtras
];
Personally, I define the ghcDevEnv
attribute in my ~/.nixpkgs/config.nix
file as follows:
{
packageOverrides = pkgs: {
ghcDevEnv = pkgs.haskellPackages_ghc782.ghcWithPackages (p: with p; [
xmonad xmonadContrib xmonadExtras xmobar
]);
};
}
Then I install that into my user profile, nix-env -iA ghcDevEnv
, and finally call
exec xmonad
in the last line of my ~/.xsession
file.
Should this still be open? xmonad.nix
uses ghcWithPackages and has extraPackages
field. Yet, on IRC we have a person for whom xmonad --recompile
can't even find GHC and he has to put haskellPackages.ghc
somewhere like systemPackages
to get it to work.
What's the situation as of late 2014?
From my perspective, the issue can be closed. peti's approach didn't work for me back in May, but when I installed the 14.04 channel two weeks ago, the following section in configure.nix worked fine for running lightdm, xfce, and xmonad. If I remember correctly, it didn't work the first time I logged in, but logging out and in again apparently got the config files setup right...
services.xserver = {
enable = true;
layout = "us";
xkbOptions = "eurosign:e";
displayManager.lightdm.enable = true;
windowManager.xmonad.enable = true;
windowManager.xmonad.enableContribAndExtras = true;
windowManager.xmonad.extraPackages = self: [ self.xmonadContrib ];
windowManager.default = "xmonad";
desktopManager.xterm.enable = false;
desktopManager.xfce.enable = true;
desktopManager.default = "xfce";
};
Right, a similar config works for me without problems.
The problems I mentioned in my previous post turned out due to the user having exec xmonad
in .xsession
and were fixed by removing it from there.
I suggest this is closed. If some xmonad problems persist, better discuss them in the nixpkgs repo (or ML, IRC), not this old repo.
If this is closed why does no one close it? :)
I can't close this ticket. I suppose it's the same for others. In all likelihood, @edolstra has to press the button, because he's the owner of this project.
This repo is obsolete so it shouldn't matter either way.
I got the same trouble actually using Nixos v17.09.1922.21bb269a32 (Hummingbird)
Error detected while loading xmonad configuration file: /home/michael/.xmonad/xmonad.hs
xmonad.hs:15:1: error:
Failed to load interface for ‘XMonad.Hooks.DynamicLog’
Use -v to see a list of the files searched for.
xmonad.hs:17:1: error:
Failed to load interface for ‘XMonad.Hooks.ManageDocks’
Use -v to see a list of the files searched for.
xmonad.hs:20:1: error:
Failed to load interface for ‘XMonad.Util.EZConfig’
Use -v to see a list of the files searched for.
xmonad.hs:21:1: error:
Failed to load interface for ‘XMonad.Actions.CycleWS’
Use -v to see a list of the files searched for.
xmonad.hs:22:1: error:
Failed to load interface for ‘XMonad.Layout.Combo’
Use -v to see a list of the files searched for.
xmonad.hs:23:1: error:
Failed to load interface for ‘XMonad.Layout.Grid’
Perhaps you meant XMonad.Layout (from xmonad-0.13)
Use -v to see a list of the files searched for.
xmonad.hs:24:1: error:
Failed to load interface for ‘XMonad.Layout.LayoutModifier’
Use -v to see a list of the files searched for.
xmonad.hs:25:1: error:
Failed to load interface for ‘XMonad.Layout.Named’
Use -v to see a list of the files searched for.
xmonad.hs:26:1: error:
Failed to load interface for ‘XMonad.Layout.NoBorders’
Use -v to see a list of the files searched for.
xmonad.hs:27:1: error:
Failed to load interface for ‘XMonad.Layout.PerWorkspace’
Use -v to see a list of the files searched for.
xmonad.hs:28:1: error:
Failed to load interface for ‘XMonad.Layout.Reflect’
Use -v to see a list of the files searched for.
xmonad.hs:29:1: error:
Failed to load interface for ‘XMonad.Layout.TwoPane’
Use -v to see a list of the files searched for.
xmonad.hs:30:1: error:
Failed to load interface for ‘XMonad.Layout.WindowNavigation’
Use -v to see a list of the files searched for.
xmonad.hs:31:1: error:
Failed to load interface for ‘XMonad.Layout.Circle’
Use -v to see a list of the files searched for.
xmonad.hs:32:1: error:
Failed to load interface for ‘XMonad.Layout.MosaicAlt’
Use -v to see a list of the files searched for.
xmonad.hs:33:1: error:
Failed to load interface for ‘XMonad.Layout.Spiral’
Use -v to see a list of the files searched for.
xmonad.hs:34:1: error:
Failed to load interface for ‘XMonad.Actions.GridSelect’
Use -v to see a list of the files searched for.
xmonad.hs:41:1: error:
Failed to load interface for ‘XMonad.Actions.SpawnOn’
Use -v to see a list of the files searched for.
xmonad.hs:42:1: error:
Failed to load interface for ‘XMonad.Hooks.SetWMName’
Use -v to see a list of the files searched for.
xmonad.hs:44:1: error:
Failed to load interface for ‘XMonad.Hooks.ManageDocks’
Use -v to see a list of the files searched for.
xmonad.hs:47:1: error:
Failed to load interface for ‘XMonad.Layout.Fullscreen’
Use -v to see a list of the files searched for.
xmonad.hs:48:1: error:
Failed to load interface for ‘XMonad.Hooks.ManageDocks’
Use -v to see a list of the files searched for.
xmonad.hs:50:1: error:
Failed to load interface for ‘XMonad.Hooks.ManageHelpers’
Use -v to see a list of the files searched for.
xmonad.hs:52:1: error:
Failed to load interface for ‘XMonad.Hooks.EwmhDesktops’
Use -v to see a list of the files searched for.
Please check the file for errors.
You should report to https://github.com/NixOS/nixpkgs repo
While
xmonad.enable
does give you an xmonad, you are unable to configure it. xmonad also requires:xmessage
on$PATH
xmonad.hs
file.