Size: a a a

2021 March 17

YM

Yurii Matsiuk in NixOS
Видел недавно, какой-то хук ломает билд, если buildPhase = "make build". Потому что после хука ожидается ньюлайн и надо было buildPhase = '''
make build
'''
источник

N

Nikita Ursol in NixOS
Yurii Matsiuk
Видел недавно, какой-то хук ломает билд, если buildPhase = "make build". Потому что после хука ожидается ньюлайн и надо было buildPhase = '''
make build
'''
ну тут явно баг
источник

YM

Yurii Matsiuk in NixOS
Misha Gusarov
Как это нет? 15.1 в мануале
Точно. А я думаю где это видел. Секция-то про дата тайп 😉
источник

N

Nikolay in NixOS
Вот например nix строка '' bla \'\$foo\' \'${bar}\' bla ''. Немало копий сломал, но так и не смог получить в баше то что ожидаю.
источник

YM

Yurii Matsiuk in NixOS
источник

YM

Yurii Matsiuk in NixOS
Этж как раз оно👆
источник

N

Nikita Ursol in NixOS
Nikita Ursol
ну тут явно баг
если хеш пароля пользователю настраивать, то там наоборот нельзя \n
вот так или echo -n делать, или просто через pkgs.lib.fileContents получать
источник

N

Nikita Ursol in NixOS
благо там есть проверка на правильность хеша, спасает
источник

АБ

Александр Бантьев... in NixOS
Nikolay
Вот например nix строка '' bla \'\$foo\' \'${bar}\' bla ''. Немало копий сломал, но так и не смог получить в баше то что ожидаю.
Ты лучше скажи, что ожидаешь в баше
источник

АБ

Александр Бантьев... in NixOS
Если что, все \ в этой строке перейдут в баш as-is
источник

N

Nikolay in NixOS
Александр Бантьев
Ты лучше скажи, что ожидаешь в баше
в баше хочу чтобы $foo вот прямо в таком виде был в одинарных ковычках, ну и значение никсовой переменной bar в одинарных ковычках.
источник

АБ

Александр Бантьев... in NixOS
Nikolay
в баше хочу чтобы $foo вот прямо в таком виде был в одинарных ковычках, ну и значение никсовой переменной bar в одинарных ковычках.
Значения никсовых переменных лучше всего через lib.escapeShellArg упаковывать
источник

N

Nikolay in NixOS
Александр Бантьев
Если что, все \ в этой строке перейдут в баш as-is
если в баше печатаю эту строку через echo - все ок, но если выполняю - то ерунда выходит
источник

АБ

Александр Бантьев... in NixOS
Т.е. '' bla '$foo' ${lib.escapeShellArg bar} bla ''
источник

N

Nikolay in NixOS
Александр Бантьев
Т.е. '' bla '$foo' ${lib.escapeShellArg bar} bla ''
мне кажется корень зла в '$foo' где-то
источник

АБ

Александр Бантьев... in NixOS
Не нужно ескейпить там, где ескейпинг не нужен (а в '' строках только ''${} поддерживается)
источник

АБ

Александр Бантьев... in NixOS
Nikolay
мне кажется корень зла в '$foo' где-то
Ну ты же понимаешь, что в баше одинарные кавычки отменяют интерполяцию переменных?
источник

АБ

Александр Бантьев... in NixOS
Т.е. если ты попытаешься выполнить эту строку как команду, то команда bla получит аргументы буквально $foo, значение никсовой переменной bar, и буквально bla
источник

N

Nikolay in NixOS
Александр Бантьев
Ну ты же понимаешь, что в баше одинарные кавычки отменяют интерполяцию переменных?
так foo это не баш переменная как раз, $foo должно уйти как аргумент
источник

АБ

Александр Бантьев... in NixOS
Nikolay
так foo это не баш переменная как раз, $foo должно уйти как аргумент
Хорошо
источник