LINUX.ORG.RU

Как добавить nix скрипт в home-manager

 ,


0

1

Решил, найти приключений и попробовать nixos. Начал настраивать под себя, вроде все хорошо, но: Есть вот такой вот shell.nix

with import <nixpkgs> {};

stdenv.mkDerivation {
                        name = "dev-environment"; # Probably put a more meaningful name here
                        buildInputs = [ 
                        pkg-config 
                        openssl 
                        libudev-zero
                        at-spi2-atk
                        atkmm
                        cairo
                        gdk-pixbuf
                        glib
                        gtk3
                        harfbuzz
                        librsvg
                        libsoup_3
                        pango
                        webkitgtk_4_1
                        libgudev
                        ];
    }

Выполняю его

nix-shell shell.nix
запускаю home-manager
home-manager switch

все работает как надо, перегружаюсь и все пути потеряны. Как это правильно прописать и куда, помогите кто знает.

★★★★
Ответ на: комментарий от hateyoufeel

Это скрипт указывает пути для PKG_CONFIG_PATH pkg-config должен отдавать информацию по выше указаным библиотекам, а он это не делает. Если выполнить скрипт - все хорошо, но до перезагрузки. Как бы это сделать перманентно.

Silerus ★★★★
() автор топика
Ответ на: комментарий от James_Holden

а как? Вставить на прямую этот код в конфиг home-manager не выходит. Может надо как то подключить этот файл!? Но что то у меня мозгов не хватает как правильно загуглить?

Silerus ★★★★
() автор топика
Ответ на: комментарий от Silerus

Ты хочешь, чтобы эти пакеты были доступны вообще всегда? Или только для какого-то отдельного проекта? Если второе, кинь свой shell.nix в директорию с проектом и юзай direnv.

hateyoufeel ★★★★★
()
Ответ на: комментарий от hateyoufeel

Хотелось бы всегда, чтоб не болела голова, перед каждой компиляцией, открыл новый терминал все сбросилось; Насколько я понял из гугла это проблема unstable версии, начитался умных статей и перешел, по какой то причине не прописывается пути до конца.

Silerus ★★★★
() автор топика
Ответ на: комментарий от Silerus

Хотелось бы всегда, чтоб не болела голова, перед каждой компиляцией

Тогда делай как анон посоветовал выше. Но я всё же рекомендую путь с direnv.

Насколько я понял из гугла это проблема unstable версии, начитался умных статей и перешел, по какой то причине не прописывается пути до конца.

Нет, ты просто какую-то странную фигню тут сделал. Команда nix-shell создаёт тебе временный шелл с указанными тобой пакетами. В другом терминале этот шелл доступен не будет, пока ты так же nix-shell не выполнишь.

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 2)
Ответ на: комментарий от Silerus

https://github.com/NixOS/nixpkgs/issues/64530

Вот твой кейс. Там ссылка на nixos.wiki есть, можешь почитать почему так сделано.

Но я всё ещё рекомендую кинуть упомянутый shell.nix в директорию с проектом и поставить direnv. Серьёзно, это самый удобный способ. Я для разработки это использую повсеместно.

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 1)