-
-
Notifications
You must be signed in to change notification settings - Fork 14.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Package 'yi' is broken #28248
Comments
I'm told this can be fixed with a handful of Haskell package overrides. https://twitter.com/taktoa1/status/896915704804290560 |
For posterity:
|
Is this because Nix derivations ignore that versions are a thing that exists? How do you go about using these "overrides"? |
haskellPackages.override {
overrides = self: super: {
yi-core = super.yi-core_0_14_0;
yi-frontend-vty = super.yi-frontend-vty_0_14_0;
yi-fuzzy-open = super.yi-fuzzy-open_0_14_0;
yi-ireader = super.yi-ireader_0_14_0;
yi-keymap-cua = super.yi-keymap-cua_0_14_0;
yi-keymap-emacs = super.yi-keymap-emacs_0_14_0;
yi-keymap-vim = super.yi-keymap-vim_0_14_0;
yi-language = super.yi-language_0_14_0;
yi-misc-modes = super.yi-misc-modes_0_14_0;
yi-mode-haskell = super.yi-mode-haskell_0_14_0;
yi-mode-javascript = super.yi-mode-javascript_0_14_0;
yi-snippet = super.yi-snippet_0_14_0;
};
} |
Where does this magical code go? |
It can go in various places, but the easiest is to add this to ~/.config/nixpkgs/config.nix: {
packageOverrides = pkgs: {
haskellPackages = pkgs.haskellPackages.override {
overrides = self: super: {
yi-core = super.yi-core_0_14_0;
yi-frontend-vty = super.yi-frontend-vty_0_14_0;
yi-fuzzy-open = super.yi-fuzzy-open_0_14_0;
yi-ireader = super.yi-ireader_0_14_0;
yi-keymap-cua = super.yi-keymap-cua_0_14_0;
yi-keymap-emacs = super.yi-keymap-emacs_0_14_0;
yi-keymap-vim = super.yi-keymap-vim_0_14_0;
yi-language = super.yi-language_0_14_0;
yi-misc-modes = super.yi-misc-modes_0_14_0;
yi-mode-haskell = super.yi-mode-haskell_0_14_0;
yi-mode-javascript = super.yi-mode-javascript_0_14_0;
yi-snippet = super.yi-snippet_0_14_0;
};
};
};
} |
OK, that mostly worked, except now I have the missing dependency:
A quick search of the huge generated hackage-packages.nix shows that Is there a way I can get |
Which package has that missing dependency? Also, for future questions like this, I recommend asking on #nixos on FreeNode. |
Thanks for the help! I probably should have mentioned, I'm using NixOS 17.09. The package dependent on Specifically, version I tried again using the my {
packageOverrides = pkgs: {
haskellPackages = pkgs.haskellPackages.override {
overrides = self: super: {
yi-core = super.yi-core_0_16_0;
yi-frontend-vty = super.yi-frontend-vty_0_16_0;
yi-fuzzy-open = super.yi-fuzzy-open_0_16_0;
yi-ireader = super.yi-ireader_0_16_0;
yi-keymap-cua = super.yi-keymap-cua_0_16_0;
yi-keymap-emacs = super.yi-keymap-emacs_0_16_0;
yi-keymap-vim = super.yi-keymap-vim_0_16_0;
yi-language = super.yi-language_0_16_0;
yi-misc-modes = super.yi-misc-modes_0_16_0;
yi-mode-haskell = super.yi-mode-haskell_0_16_0;
yi-mode-javascript = super.yi-mode-javascript_0_16_0;
yi-snippet = super.yi-snippet_0_16_0;
yi-rope = super.yi-rope_0_10;
};
};
};
} I'll let you know if this build works. I still think it's ridiculous that we even have version numbers in package names in the first place. It's a messy and confusing workaround. |
That seems to have worked! |
|
/cc @chris-martin |
Confirmed, working in unstable. |
Unstable:
17.03:
The text was updated successfully, but these errors were encountered: