Опубликована стабильная версия набора базовых системных утилит GNU Coreutils 9.4, в состав которого входят такие программы, как sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln, ls и т.д...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=59712
> реализация на Rust распространяется под пермиссивной лицензией MIT, вместо копилефт-лицензии GPLИ это здорово.
Чем?
тем что этот код открыт!
а не ограничен хотелками гнутых, которые хотели запатентовать саму фразу open source
>а не ограничен хотелками гнутыХотелки гнутых противоречат хотелкам проприетарщиков.
>которые хотели запатентовать саму фразу open source
Ни разу об этом не слышал. Может они говорили, что термин "Открытые исходники" означает и то, что можно сколько угодно смотреть на исходники, но при этом копировать и изменять код нельзя. Да-да и такие опен-сорсные лицензии бывают.
https://opensource.org/pressreleases/certified-open-source.php/
вот это история (от лица OSI) - они хотели зарегистрировать торговую марку, "чтобы никто другой с плохими намерениями не зарегистрировал ее"Какое благородство!
Мы украдем у мира общеупотребительный термин (как Яблоко или Окно) чтобы другие плохие парни не украли его!Это конечно, не настолько круто как паразиты из FSF, которые требуют "письменное заявление о передаче авторских прав" (исключительно ради того, чтобы помочь с юридической защитой!!)
Но ты можешь составить представление, об этих благородных людях, которые принимают большие деньги от корпораций.
>"письменное заявление о передаче авторских прав" (исключительно ради того, чтобы помочь с юридической защитой!!)Да FSF, в том числе, консультирует программистов. Да, юридическая организация желает помочь простым программистам, которые живут в агрессивном юридическом мире полном обмана и лжи. И я в отличии от вас это говорю без всякого сарказма.
>Но ты можешь составить представление, об этих благородных людях, которые принимают большие деньги от корпораций.
И что в этом плохого? GNU не против больших компаний как таковых. GNU не коммунизм, GNU не отвергает денежные отношения. За рубежом менталитет у людей другой - когда люди, или компания дают деньги, они как ни странно хотят помочь. Криминальных отношений типа: "Я тебе дал денег и поэтому ты мой должник", там не возникает. Если у компании есть "корысть", то эта "корысть" оформляется в виде юридически обязыающего документа. Например, Google дал деньги Мозилле - и согласно договору Мозилла обязуется до 2011 года все поисковые запросы сделанные в Лисе обезличить и предоставить компании Google. И принципиальный пункт договора про "обезличивание" исходит со стороны Мозиллы.
>Криминальных отношений типа: "Я тебе дал денег и поэтому ты мой должник", там не возникаетГлавное - верить. Что ни Sinaloa cartel, ни 5 Семей, ни уличных банд не существует. Не говоря уже об употреблении сами знаете чего сыном одного государственного чиновника высшего звена (что само по себе возмутительно - таких круглосуточно охраняют, значит тех, кто ему сами знаете что поставил, могли за жопу схватить, но не схватили), который половину своего дохода должен откатывать отцу за то, что он использует своё служебное положение для оказания давления на другие государства, чтобы бизнес, записанный на его сына, процветал.
Ловко ты так к компаниям из Кремниевой долины примешал криминальные банды. В Штатах донат не воспринимается, как "Я тебе дал денег и поэтому ты мой должник". Там менталитет другой. Прикинь, у них такое явление, как "воровство" реально осуждается обществом!
Ты точно читал текст лицензии GPL? Покажи, где написано, что код закрыт?
Легко, если ты читал бы лицензию то знал, что обязанность предоставлять код есть только "для тех кто получил программу".Т.е.
1. форкаем ядро линукс
2. модифицируем под себя
3. ни с кем не делимся и не выкладываем в публичный доступ
4. ...
5. PROFIT!!Просто подарок (от корпораций) для корпораций.
Можно крутить целые датацентры только потребляя код, и не возвращая ничего взамен (ну кроме денег в общак всяких "настоящих защитников свободы")
То-то теперь придёт MIT и решит проблему. Да? Правда ведь?
> Улучшена совместимость с эталонным тестовым набором GNU Coreutils, при прохождении которого успешно выполнено 372 теста (в прошлой версии 373), 181 (178) тест завершился неудачей, а 49 (49) тестов были пропущеныЭто впечатляющий отрицательный рост.
Рим не сразу строился.
Ну как бы новый 9.4 вышел, там появились новые фичи и тесты, которые еще не перенесли в uutils
Так что все логично вроде.
Логика и кексперты. Звучит реалистично.
90% тестов(покрывающие 10% фцнкционала) прошли успешно
> обеспечен учёт времени нахождения в спящем режиме виртуальных машинэто вот кстате очень неясно зачем, тк uptime фактически не меняется, те будет
kernel_uptime - current_time
но зачем ? может какеш из за бага 2038 что то обкоцалось в сознании разрабов (ну или инт теперь переполнится в другом месте хз крч
> Также доступен выпуск проекта uutils coreutils 0.0.21, развивающего аналог пакета GNU Coreutils, переписанный на языке Rust.Есть ли аналог busybox на расте ?
это оно и есть https://uutils.github.io/coreutils/book/multicall.html
> это оно и естьпринцип построения бинарника такой же, не планируют они выйти за рамки набора утилит coreutils как в busybox ?
весит 30 метров вместо полутора. Отличная работа, растоманы!
Память сийчас дишовая !!!
CACHE MISS, не не слышал? Ах да, мигагерцы спасают.
Предлагаешь из-за бездарных дол6оящеров покупать компы по 25000$ раз в два года?
8мб вообще-то
Однако там реализовано сильно больше из gnu coreutils чем поддерживается в busybox
Справка и помощь по командам также имеется, многие команды имеют лучшую буферизацию/поддержку фич/многопоточность/производительность
Есть один чудак, который пилит toybox под бздунской лицензией, но на Сишке. Подскажите ему, что нужно переписать на Расте.
> Подскажите ему, что нужно переписать на Расте.сам догадается
EVERYTHING!!!!!
Был RustyBox, но они выбрали имхо неудачный подход - сконвертить сишный код в при помощи c2rust, а потом потихоньку менять.
Но не взлетело, думаю потому что невозможно добиться идиоматически правильного кода из такого кадавра.
Я к этому отношусь как к репортажам с Марса. Кто-то что-то пишет за бугром. В РФ же Rust умер во время родов. Вакансий нет, растительности нет, населена роботами.
> В РФ же Rust умер во время родов. Вакансий нет, растительности нет, населена роботами.не в РФ много вакансий на Rust - есть смысл надеяться на удалёнку ?
ложь, их почти нет
> ложь, их почти нетвообще-то это был вопрос, но знаю что они есть
не, ну ты видел сколько там знать нужно?
боюсь тут таких не найдутэто же не скрипты на баше копипастить, или пропатчити KDE2 під FreeBSD
тут даже думать придется
> не, ну ты видел сколько там знать нужно?
> боюсь тут таких не найдутпосмотрел их фирмварь - ядро кривое аллвиннеровское а не портированное майнстримное, я такие в первом классе делал
>> https://career.habr.com/vacancies/1000120084
> Вакансия в архиве. Вакансия в архиве, на неё нельзя откликнуться.
Шо они там хотят стоит от 15000$
а разве других вакансий много?
насколько вижу кол-во уменьшилось, несмотря на то, что соискателей тоже стало меньше (после начала того что называть нельзя)
правда это было еще до "кидков с броней"
А есть какой-то сакральный смысл все эти "утилиты" отдельными бинарниками распространять, вместо стандартного набора команд шела?
Можешь собрать в 1 бинарь типа busybox, сабж это умеет. Но когда тебе надо 1000 нестандартных бинарей в секунду вызывать (вроде сабжа или альтернативных реализаций которых полно), ты заметишь разницу. Шел конечно кэширует вызовы, но 1000 10 мегабайтных бинарей по-любому загадят память.
> Можешь собрать в 1 бинарь типа busybox, сабж это умеет. Но когда
> тебе надо 1000 нестандартных бинарей в секунду вызывать (вроде сабжа или
> альтернативных реализаций которых полно), ты заметишь разницу. Шел конечно кэширует вызовы,
> но 1000 10 мегабайтных бинарей по-любому загадят память.Собирать то зачем?
Это просто разные функции, они могут кучу кода разделять.Ненужно ничего кешировать от слова совсем.
Можно убрать сишку из юникса, но юникс из сишника убрать нельзя...
Если всё будет запихнуто в шелл, ему не придётся ничего вызывать.
Конечно, всего-то шелл разжиреет ещё больше, какая ерунда. И вот шелл-то миллионы раз в секунду вызывается, что бы ты ни делал.Но, я думаю, тут вопрос в другом. Примерно всё, что возможно встроить, уже встроили, но встроенные реализации в итоге всем уступают, и это лишняя боль и для разрабов и для пользователей. При этом, шелл довольно переносимый (как для шелла), а coreutils содержит платформоспецифичные вещи и полноценную функциональность.
Ещё есть менее очевидное, но то, что, например, cat вызывается в подпроцессе, позволяет перезаписать файл на месте, напрямую вычитывая старые данные пайпом (чаще всего использую в связке с jq, у неё есть ммм ряд ограничений). Отдельный процесс в некоторых случаях лучше. Правда, sleep -- это отдельный процесс, и миллионы слипов мешаются.
А так можно ещё и util-linux встроить, ну а чего стесняться. Сделаем systemd из баша, потом и его самого встроим.
Эээээ, а какая разница, сколько будет весить бинарь, если из него выполняться будет только небольшой кусок? Только он (плюс паддинги) и сфетчится в рам.
> откат на использование каталога '/tmp', если не выставлена переменная окружения $TMPDIRПодводных камней здесь ожидаю я.
Юниксовые утилиты - одна из самых убогих вещей когда-то придуманных. Вместо нормального подхода - написание стены текста из нечитабельных сокращений с упоротым синтаксисом. Зачем-то это г. тащат в Линукс.
Зато они настолько привычные! Столько скриптов гвоздями прибиты именно к ним и их аргументам.
Ты что, хочешь это все переписывать??
В русскоязычном обшестве те, кто осуждает юниксовые утилиты, на проверку являются обычными неосиляторами. Прикол в том, что эти неосиляторы изображают из себя серъёзных дядек имеющих ценное мнение.Ну не осилили вы сценарии GNU bash, GNU awk, GNU make, просто тихо вернитесь в OS Windows. Зачем говорить гадости про Линукс?
> Ну не осилили вы сценарии GNU bash, GNU awk, GNU make, просто тихо вернитесь в OS Windows.просто?!
Попробуй хотя бы запомнить, когда в паверщели используют () а когда {}А потом можно будет про объектную модель поговорить и про то почему .count функция а не объект.
Они из всей винды видимо освоили только "проводник".
> https://github.com/uutils/coreutils/
> MIT licenseвот истинная причина всех криков, писем трудящихся, негодования по поводу якобы неуважения одним добряком прав женщин и транспростигосподилюдей и вкорячивания сомнительного шлака во все системы во имя бизапаснасти