Size: a a a

2020 April 11

VY

Vasiliy Yorkin in NixOS
хм, ghcid пишет
<no location info>: warning: [-Wmissed-extra-shared-lib]
   libz.so: cannot open shared object file: No such file or directory

хотя в shell.nix есть zlib
{ pkgs ? import <nixpkgs> {} }:
pkgs.mkShell {
 buildInputs = with pkgs; [ zlib ];
}
запускаю вот так
ghcid --command="cabal repl"

что мб не так?
источник

VY

Vasiliy Yorkin in NixOS
ls $(nix-build --no-out-link "<nixpkgs>" -A zlib)/lib
libz.so  libz.so.1  libz.so.1.2.11
источник

VY

Vasiliy Yorkin in NixOS
как-то можно ему объяснить где лежит либа?

в доках написано про этот ворнинг

-Wmissed-extra-shared-lib

   Warn when GHCi can’t load a shared lib it deduced it should load when loading a package and analyzing the extra-libraries stanza of the target package description.

наверное, это надо в хаскельный чат, но я просто знаю, что тут половина хаскелистов сидит)
источник

АБ

Александр Бантьев in NixOS
Да не, это сюда
источник

АБ

Александр Бантьев in NixOS
Странно
источник

АБ

Александр Бантьев in NixOS
А можно пример пакета?
источник

AS

Alexey Shmalko in NixOS
а добавь ghc в buildInputs?
источник

VY

Vasiliy Yorkin in NixOS
Александр Бантьев
А можно пример пакета?
Просто пакета ещё нет, есть кабалфайл от него) http://ix.io/2hBe
источник

VY

Vasiliy Yorkin in NixOS
Alexey Shmalko
а добавь ghc в buildInputs?
хм, сек, попробую
источник

АБ

Александр Бантьев in NixOS
Или ещё можешь попробовать ghc.withPackages , но я хз, будет ли оно кушать сторонние либы
источник

VY

Vasiliy Yorkin in NixOS
теперь другая проблема...
сделал как у Габреля тут описано
https://github.com/Gabriel439/haskell-nix/blob/master/project4/README.md#composing-overrides

release.nix: http://ix.io/2hBz

▲ nix-shell
error: Package ‘co-log-0.3.0.0’ in /etc/nixos/pkgs/nixpkgs/pkgs/development/haskell-modules/hackage-packages.nix:54259 is marked as broken, refusing to evaluate.
источник

VY

Vasiliy Yorkin in NixOS
хотя
источник

VY

Vasiliy Yorkin in NixOS
shell.nix:

(import ./release.nix {}).project.env
источник

VY

Vasiliy Yorkin in NixOS
т.е. если project атрибут там есть, то он точно это из моей папки взял, иначе оно бы сломалось
источник

VY

Vasiliy Yorkin in NixOS
мб я где-то сам накосячил, сейчас проверю правильно ли я списал у него :)
источник

VY

Vasiliy Yorkin in NixOS
а, ну да, 🤦‍♂️ версии в именах файлов, ок, nvm
я уже близок к цели :)
источник

VY

Vasiliy Yorkin in NixOS
добавил в кабал-файл в зависимости co-log
Setup: Encountered missing or private dependencies:
ansi-terminal ==0.10.*, chronos ==1.1.*
что это может значить? что я забыл?
оба пакета есть в списке зависимостей co-log
источник

VY

Vasiliy Yorkin in NixOS
Если их cabal2nix'ом добавить (положить в директорию ./nix), то всё ок, но я не понимаю почему до этого не работало
источник

VY

Vasiliy Yorkin in NixOS
А, 🤦‍♂️🤦‍♂️, поэтому
nix-repl> pkgs.haskell.packages.ghc882.ansi-terminal.version
"0.9.1"
nix-repl> pkgs.haskell.packages.ghc882.chronos.version
"1.0.9"
источник

АБ

Александр Бантьев in NixOS
Что?
источник