LINUX.ORG.RU
ФорумTalks

окололинуксовый юмор.

 воскресный юмор


2

1

а вы уже посмеялись над очередным «экспертом» «знающим как надо» устанавливать программы в линуксе?

этот бред можно прочитать на хабре: http://habrahabr.ru/post/152841/

ps. для Ъ переносить это на лор мне совесть не позволяет.

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

А я и говорю, имена не факт что помогают. Все эти базы для отслеживание установленного не слишком-то эффективны. Наоборот я предлагаю убрать все эти лишние сущьности в виде programname-files. Т.к. идентификаторы - уже база, всё что надо строить по ним индекс. Не ужели не видно разницу?

programname1-files:

/usr/bin/filename1
/usr/lib/filename2
/usr/share/filename3
/usr/share/doc/filename4

или

programs.list:

eb7fa5a8-c177-4c84-bf79-00ae0f7a47c9:programname1
5a3e054a-0bb0-49b1-adb3-e3e307673001:programname2
e8f36695-380f-4be8-b6c1-dc55559a0d83:programname3
a65af4c9-f925-424c-bcb0-653100123b3b:programname4

rnz
()
Ответ на: комментарий от invy

И как ты предлагаешь искать ответ на вопрос: какие файлы принадлежат программе 'programname1'?

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

ну вариантов хватает: тот же ls -l вполне может выводить в дополнение к информации о владельце:групп, информацию о программе к которой принадлежит программа, или например тот же bash вполне может интерпретировать например ввод

$ programname1:<tab>
как действие для показа стуктуры размещения программы, выведя хинт типа:
programname1:bin
programname1:etc
programname1:doc
programname1:lib
А на ввод например:
$ nano programname1:etc/<tab>some<tab>.conf<enter>
интерпретатор вполне может выполнить nano передав аргументом соответствующий конфигурационный файл (хотя это я считаю вредным, имхо лучше-бы конфиги uploadились с проверкой на валидность, чем в прямую редактировались).

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

Ты ответь на вопрос не как этим пользоваться, а как это будет работать. У тебя есть программа programname1, тебе нужно найти все файлы ей принадлежащие. Что для этого должно быть сделано системой? Давай, по пунктам...
Ну типа: 1) найти соответствующий id в таблице id-programname 2) найти все файлы соответствующие данному id во всём дереве файловой системы? Или как? Давай, по пунктам и заодно прикинь необходимые затраты на поиск.

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

Ну ты же уже написал... Ок, допустим как это будет bash делать для меня:
1) интерпретирует «programname1:<tab>»;
2) смотрит в файл соответствия (если файла, нет ругается «нет файла-соответствия, построй индекс командой такой-то» ну или сам дёргает программу для перестройки индекса);
3) дёргает базовые каталоги (посмотрев в переменные окружения), вываливает списком названия базовых каталогов.

Допустим для того, что-бы вывалить все файлы принадлежащие programname1, у нас будет тулза типа lsa:
1) интерпретирует ввод:

lsa -r programname1:*
2) ищет соответствующий programname1 did;
3) дёргает базовые каталоги/did/ рекурсивно собирая из каждого пути к подкаталогам и файлам;
4) попутно выводит полученные списки на stdout.

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

Эх что-то у меня с запятыми полный фейл сегодня...

rnz
()
Ответ на: комментарий от invy

по поводу затрат на поиск - они ничтожны:

0.001s - фильтрануть файл на предмет имени и выделить часть строки до delimiter'а;
0.070s - собрать список по структуре (echo 3 > /proc/sys/vm/drop_caches);

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

тот же ls -l вполне может выводить в дополнение к информации о владельце:групп, информацию о программе к которой принадлежит программа, или например тот же bash вполне может интерпретировать

Ты придумал абсолютно непрозрачное говно и чтобы оно стало прозрачным предлагаешь навертеть костыли к ls. Ты вообще здоров? С головой всё нормально?

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

Дык опенсорц же, пусть делает. Или вон можно Поттерингу написать, что этот ваш RPM - говно неюзабельное, его надо переписать с нуля в несовместимом с предыдущей реализацией виде, он обрадуется новой идее. Ну или самому написать, и завоевать мир. Ну а если этой тулзой будут пользоваться только полторы калеки, то значит тупое быдло само себе хуже делает, не понимая Гения.

om-nom-nimouse ★★
()
Ответ на: комментарий от rnz

Задача: добавить пару строчек в squid.conf

Существующее решение:

vim /etc/squid/squid.conf

Предлагаемое наркоманами решение:

1. Выяснить, где находится squid.conf:

/etc/eb7fa5a8-c177-4c84-bf79-00ae0f7a47c9/squid.conf
/etc/5a3e054a-0bb0-49b1-adb3-e3e307673001/squid.conf
/etc/e8f36695-380f-4be8-b6c1-dc55559a0d83/squid.conf
/etc/a65af4c9-f925-424c-bcb0-653100123b3b/squid.conf
2. ...

3. ...

4. Тут должен быть «PROFIT!», но его тут нет.

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

тот же ls -l вполне может выводить в дополнение к информации о владельце:групп, информацию о программе к которой принадлежит программа

заюзай xattrs, и будет тебе щастье.

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

Ты придумал абсолютно непрозрачное говно и чтобы оно стало прозрачным предлагаешь навертеть костыли к ls. Ты вообще здоров? С головой всё нормально?

всё у него нормально с головой, просто неграмотный. УЖЕ есть расширенные атрибуты, которые позволяют навесить к любому файлу что угодно. В том числе к бинарникам чё-нить. Я вот навешиваю gpg sign, что-бы проверить быстро, тот это файл, или не тот.

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

Спасибо, но я знаю что такое xattr, они никак не спасают от того бардака, который творится с развертыванием пакетов в дистрибутивах linux.

rnz
()
Ответ на: комментарий от Kindly_Cat

Сомневаюсь. Чем мешают понятные имена файлов?

наверное он боится того, что система не сможет сделать player2, если есть palyer... Я тоже иногда так делаю, например обзываю файлы их md5. Впрочем, ФС тоже так делает (на самом деле она хеширует имена файлов, и ищет хеш, а не имя). Но зачем это говно вываливать в ls - мне тоже непонятно.

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

наверное он боится того, что система не сможет сделать player2, если есть palyer

Наверное, у него просто ручки кривые. Или глаза заточены под мановую слепоту.

Kindly_Cat
()
Ответ на: комментарий от rnz

Спасибо, но я знаю что такое xattr, они никак не спасают от того бардака, который творится с развертыванием пакетов в дистрибутивах linux.

и где ты видишь «бардак»? Бардак в твоей венде, где все файлы складываются в каталог с программой, и в НЁХ по имени «реестр». В Linux я могу _в принципе_ запретить юзерам запускать что угодно, тупо поставив noexec на /home & /tmp, а что делать в венде? Если запретить программе работать, она не будет работать, если разрешить - она будет качать троянов, и их у себя складировать. Имеет право. А всё потому, что _всё_ в венде лежит как в помойке - в одном и том же мусорном бачке.

xattr нужно для того, что-бы каждому файлу прилепить название программы(программ), которая юзает этот файл. Ты же этого хотел? Я не знаю, зачем тебе это, но ты можешь так сделать. Удачи.

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

Да, меня родители учили быть вежливым. И ещё меня учили быть честным. То есть, если человек идиот, то так и говорить ему, что он идиот, а не разводить толерастские сопли.

Kindly_Cat
()
Ответ на: комментарий от rnz

они никак не спасают от того бардака, который творится с развертыванием пакетов в дистрибутивах linux

Ну просвети-ка, гуру, в каком месте бардак.

Kindly_Cat
()
Ответ на: комментарий от rnz

Забавные вы, все те кому до изжоги хочется насрать, на то чему вас Мама учила - быть вежливыми.

одно из основных правил вежливости - не ходи в чужой монастырь со своим уставом. Данных хабробл.. насрал на это правило. Выглядит это действительно довольно смешно.

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

Причём тут винда (у меня кстати её нет, кроме как на работе в виртуалке для заказчиков, которые не могут жить без docx)? Хватит мыслить так, как будто на ней свет клином сошёлся. Насчёт исполнения, «сами с усами» - окололинуксовый юмор. (комментарий)

Взгляни со стороны программиста, которому надо поддерживать всё то многообразие существующих дистрибутивов. Сейчас пойду сопли - у нас же есть ментейнеры...

«Дьявол кроется в деталях».

xattr на манер затегировать всё - можно, но всё равно требуется либо это делать на стадии установки и/или вообще всё время отслеживать действия программ дёргающих объекты fs попутно втыкая теги на вновь создаваемое. И опять же придётся формировать базу тегов или строить её обходом всей fs.

rnz
()
Ответ на: комментарий от drBatty

А я не хожу в чужой монастырь. Я намекаю и улыбаюсь.

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

Взгляни со стороны программиста, которому надо поддерживать всё то многообразие существующих дистрибутивов

Дело программиста - предоставить исходники или бинарники. Опакечивание и сопровождение пакета ложится на плечи мантейнеров.

Сейчас пойду сопли - у нас же есть ментейнеры...

Это не сопли, ламоботина, это эффективное разделение труда. Ситуация, когда программист должен заморачиваться с инсталляторами и пакетами - вантузоидная шиза, которую ты пытаешься протащить в Линукс. Шёл бы ты отсюда, короче.

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

Я рад за вас и ваших родителей. Надеюсь они так же объясни вам, что идиот вполне может на вас смотреть из зеркала.

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

Может, в чём-то я похож на идиота, но в данном конкретном случае стопроцентный идиот не я, а кое-кто другой.

Kindly_Cat
()
Ответ на: комментарий от rnz

Причём тут винда (у меня кстати её нет

и давно?

Насчёт исполнения, «сами с усами» - окололинуксовый юмор. (комментарий)

тогда я просто не понимаю, ЧТО ты предлагаешь? Как я понял - твоя идея, типична для 100% без пяти минут как линуксоидов - каждую программу положить в свою папку, что-бы исключить «бардак», который якобы в Linux, в котором программа хранит бинарники в /usr/bin, /bin, /sbin, /usr/local/sbin /run и так далее. А конфиги любая уважающая себя программа хранит в /usr/share/prg_name, /etc/prg_name, $HOME, $HOME/.config, а так же в $XDG_CONFIG_HOME! Не?

Взгляни со стороны программиста, которому надо поддерживать всё то многообразие существующих дистрибутивов. Сейчас пойду сопли - у нас же есть ментейнеры...

а что - программист? Если программист сделал вменяемый configure, то в чём проблема у маинтейнера? А если программист может работать свою программу исключительно только в своём говнодистре - такой программист не нужен. Как и его быдлокод.

xattr на манер затегировать всё - можно, но всё равно требуется либо это делать на стадии установки и/или вообще всё время отслеживать действия программ дёргающих объекты fs попутно втыкая теги на вновь создаваемое. И опять же придётся формировать базу тегов или строить её обходом всей fs.

давай не будем прыгать от сферических абстракций к деталям реализации? Тебя не устраивал «бардак», как я понял суть твоих претензий, тебе нужно ткнуть в файл, и узнать, что X юзаются Y,Z,и T. Ну дык пропатчи свой ПМ, что-бы писал в xattr эти X,Y,T. Что сложного-то? Патч для слаки я сделаю за 10 минут, сразу как ты мне расскажешь, ЗАЧЕМ это мне (или кому-то ещё кроме тебя) надо, кроме как для любопытства.

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

Может мы чего то не поняли? Расскажи в деталях, чем кардинально твоя схема лучше чем применяемая в GoboLinux/NixOS?

jamy
()
Ответ на: комментарий от rnz

2) смотрит в файл соответствия (если файла, нет ругается «нет файла-соответствия, построй индекс командой такой-то» ну или сам дёргает программу для перестройки индекса);

Уже есть (см. man dselect), зачем надо изобретать велосипед? Или тебя Поттеринг покусал?

3) дёргает базовые каталоги/did/ рекурсивно собирая из каждого пути к подкаталогам и файлам;

А locate programname и man programname тебя не устраивает? Почему man programname? Потому что простому пользователю нафиг не надо ковыряться.

по поводу затрат на поиск - они ничтожны:
0.001s - фильтрануть файл на предмет имени и выделить часть строки до delimiter'а;
0.070s - собрать список по структуре (echo 3 > /proc/sys/vm/drop_caches);

no comments ...

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

Потому что простому пользователю нафиг не надо ковыряться.

вот и я теряюсь в догадках, зачем не только юзеру, но и админу это вообще надо? разве что конфиги нужны, но они есть в man секция FILES.

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

Хм... А если у тебя на машине три экземпляра сквида с разными параметрами сборки и своими собственными конфигами?

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

Блин, я уже начинаю сомневаться, что русский для тебя родной.

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

А если у тебя на машине три экземпляра сквида с разными параметрами сборки и своими собственными конфигами?

... то жить они будут в /usr/local

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

... автоматически собираться, обновляться (включая конфиги), и удаляться, все вместе или выборочно, в любом порядке. Так?

Какой пакетный менеджер такое умеет?

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

Что в твоем понятии «автоматически»? Кто-то их должен собирать. Пишется 3 спека, и не надо сношать мозги.

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

Установка:

USE="<list1>" emerge --instance="main" squid
USE="<list2>" emerge --instance="aux" squid
USE="<list3>" emerge --instance="slave1" squid
USE="<list3>" emerge --instance="slave2" squid

Настройка:
nano /etc/squid/main/squid.conf
nano /etc/squid/slave1/squid.conf

Автоматический запуск:
rc-update add squid:main default
rc-update del squid:aux

Обновление:
emerge -uavDN squid # все экземпляры сразу
emerge -uavDN --instance="aux" squid # конкретный экземпляр

Как-то так. Понятно, ручками это и сейчас делается, но вот возможность делать это автоматом, с сохранением всех плюшек ПМа - была бы неплоха.

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

возможность делать это автоматом, с сохранением всех плюшек ПМа - была бы неплоха.

Опять же вопрос: что именно ты хочешь автоматизировать?

И да, если собираешь пакеты, какие же плюшки пакетного менеджера теряются?

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

Эм... Я привёл конкретные примеры, но ты, видимо, не гентушник. Сейчас в портеже существование экземпляров одного и того же приложения не допускается. Есть слоты (несколько версий одного приложения), но это, понятно, другое. Хочется, что это допускалось, давая возможность применять к экземплярам обычные действия, выполняемые через портеж:

  • автоматическая установка, обновление, удаление, с сохранением индивидуальных флагов для каждого экземпляра, в рамках обновления системы, в том числе обновление конфигов
  • очевидное и непротиворечивое место хранения конфигов, библиотек (конкретного пакета, не общих, разумеется), данных
  • автоматическое создание скриптов автозапуска для каждого экземпляра

То есть, фактически, несколько разных пакетов, только запись в репозитории разделяемая, и исходники.

Насколько я понимаю (поправь, если я неправ), в rpm/deb-based дистрибутивах этого тоже нет.

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

Чего нет? Если ты можешь сделать ./configure, make. make install, распихав все добро по системе, то можешь это дело и опакетить. В чем проблема-то? Три копии одной программы с разными опциями сборки могут существовать в одной системе и иметь свои конфиги? Могут. Так что мешает их опакетить? А как и что там в ваших гентах я не знаю.

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

Не, ну вы жжёте капитально. Такое чувство, что у линуксоидов только и нужд, что ставить по десять разных версий одной и той же программы. Вот прямо вершина потребностей, из-за которой нужно костылить маразматические id вместо понятных имён файлов.

Kindly_Cat
()
Ответ на: комментарий от kernelpanic

Да ничего не мешает. Речь не о мешалках, а о том, что такой функционал был бы неплох в пакетном менеджере.

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

Не, ну вы жжёте капитально.

Э, нет. Это вы жжёте. На личности переходите, и говном оппонента закидываете. А я просто пытаюсь понять, есть ли в идее рациональное зерно. В идее, а не в личности предложившего (мне он тоже не шибко нравится).

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

На личности переходите, и говном оппонента закидываете

Потому что он неадекват.

А я просто пытаюсь понять, есть ли в идее рациональное зерно

Есть махонькое такое зёрнышко, которое реализуется теми же пакетными менеджерами.

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

Потому что он неадекват.

Наверное бессмысленно говорить, но это не повод переходить черту?

Есть махонькое такое зёрнышко, которое реализуется теми же пакетными менеджерами.

Не всё, и не столь удобно, как хотелось бы. Тут как с творениями Поттеринга - идеи хороши, но на первых порах от реализации блевать тянет. А в конце - чем чёрт не шутит - может и выйдет вполне вменяемая поделка.

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

Наверное бессмысленно говорить, но это не повод переходить черту?

Какую черту?

Не всё, и не столь удобно, как хотелось бы.

А что тебе ещё нужно?

Kindly_Cat
()
Ответ на: комментарий от cache

То есть, фактически, несколько разных пакетов, только запись в репозитории разделяемая, и исходники.

неясно - зачем. Две программы и сейчас можно поставить - одну ПМом, вторую make install, для тестов. Вся «автоматизация» заключается в добавление в Makefile цели uninstall. Юзерспесовые программы можно с лёгкостью ставить в юзерспейс. Что в этом плохого?

Зачем два сквида в продакшене - мне неясно. Лишняя дыра что-ли?

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

На личности переходите, и говном оппонента закидываете. А я просто пытаюсь понять, есть ли в идее рациональное зерно.

дык никто никакого зерна не видит. В т.ч. и оппонент. Вот его и закидывают...

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

А если программе необходимо писать/читать конфиги из ~/.config или ~/.local Как тогда быть?

поставь для двух пользователей. У меня так FireFox с быдлофлешем работает. (есть ещё и без быдлофлеша). И так можно поставить две практически любые программы, причём юзать их можно одновременно. Причём они никак не пересекаются, ЧСХ.

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

Это как?

./configure --prefix=$HOME

как-то так. права рута тут НЕ нужны. а FireFox можно просто тупо распаковать в $HOME и запустить $HOME/firefox.

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

А если ещё раз посмотришь?

каким-то чудом накрылся programname1-files: всё, нет информации где и что лежит, что-бы его перестроить надо как минимум прошерстить пакетную базу и упс, а в пакетной базе уже нет этого пакета - устарел пару месяцев назад и был выкинут/обновлён до не узнаваемости. А programname1 тебе нужен, потому-что у твоего клиента работает твоя программа с зависимостью от programname1 и клиент тебе повесил тикет с багрепортом из которого ясно, что надо копать в сторону именно programname1 версии которой уже нет в репе. Ну конечно же у тебя есть свой репозиторий с 55 недельными snapshot'ами под которые ты выделил 1Tb локально и ещё 5Tb на хранилище, потому-что ты уже раньше сталкивался с тем что пакет в репе может исчезнуть по прихоти очередного мейнтейнера, и да это правильно! Но...

...ты просто удалил programs.list: перестроил индекс по уставленному и всё, информация о программе доступна.

rnz
()
Ответ на: комментарий от drBatty
  • знать что я вижу, тебе не дано;
  • если ты зерна не видишь, это не значит, что его не видят все;
  • ты никто, что-бы говорить за всех;
  • кидаясь говном, себя же говном и мажешь.
rnz
()
Ответ на: комментарий от jamy

Ну о gobolinux нет желания говорить. В NixOS слишком уж выворачивается всё. Достаточно взглянуть в /nix/store/ - id-имя-версия.сonf, id-имя-версия.sh, id-имя-версия.drv и т.п.

rnz
()
Ответ на: комментарий от cache

Спасибо, что пытаетесь понять идею, а не уподобляетесь некоторым с зашкаливающими чсв и неспособными удержаться от говнометаний.

P.S. Стремлением [не]нравиться кому-либо, не обременён.

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

А ну то есть ты сам по себе такой, понятно.

Как думаешь, гений, почему твоя идея была осмеяна 6 лет назад? А почему осмеяна сейчас?

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

Схема отличается простой логикой - один id для одного экземпляра пакета, развёрнутого в систему (без разрушения уже сложившейся и стандартизированной базовой файловой иерархии - в отличии от nixos, в котором изменения чрезмерно тотальны, например /usr/ содержит только /usr/bin/env -> /nix/store/id-coreutils-version/bin/env, это при том, что сам пм nix позволяет под любым дистрибутивом свою помойку организовать в $HOME, не затрагивая основную систему вообще).

Собственно полученный id выступает в роли идентификатора для всех частей программы, добавляя всего один уровень в файловой иерархии для незначительной, но удобной изоляции компонент программ друг от друга (в том числе одной и той же программы в нескольких версиях), через этот же id проще контролировать права доступа к программе и её компонентам.

Конечно есть жертвы, основная из которых и которую не принимают, это human-readable path (hrp) - по сути всё недопонимание из-за того, что за hrp видят KISS и недоумевают - почему вдруг пути до программы и её компонент должны стать чем-то сложным, но нет тут ничего сложного, взгляните в теже fstab почему для монтирования стали использовать label и uuid - да потому, что захотелось удобства. Вот и я своим id пытаюсь получить удобства, хотя-бы:

  • лучше контролировать программы, без относительно наличия/отсутствия репы;
  • иметь возможность вести несколько версий программы, не парясь c prefix и slot;
  • иметь возможность получать доступ к частям программы через имя программы, на уровне shell, без необходимости дёргать различные тулзы, писать alias'ы и править переменные окружения.
rnz
()
Ответ на: комментарий от Eddy_Em

Ну и я не дипломат на приёме у посла. А орфодрочерством у меня браузер занят.

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

каким-то чудом накрылся programname1-files: всё, нет информации где и что лежит, что-бы его перестроить надо как минимум прошерстить пакетную базу и упс, а в пакетной базе уже нет этого пакета - устарел пару месяцев назад и был выкинут/обновлён до не узнаваемости.

ты бредишь? ну даже если такое произошло IRL, то

1. можно обновить клиенту programname1, потому как странно иметь в тестинге изменённую до неузнаваемости версию.

2. можно тестинг даунгрейдить до состояния в продакшене. Если у тебя нет бекапа продакшена - ты ССЗБ.

3. ВСЕ изменения делаются не просто так, как это делаешь ты (или как ты думаешь), фишка в том, что любая VCS позволяет откатить _любые_ изменения к _любому_ моменту. И не только откатить, но и просмотреть изменения....

ты просто удалил programs.list: перестроил индекс по уставленному и всё, информация о программе доступна.

лишняя сущность. Это возможно полезно в венде, да я слышал, вендокодеры действительно хранят ВСЕ версии зависимых бинарников в своих VCS. Но нам это не нужно.

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

знать что я вижу, тебе не дано;

если ты пишешь, что самый обычный снег красный, то либо что-то с твоим снегом, либо что-то с твоими глазами. Если со снегом всё в порядке, то как врач команды я уверен, что беда с твоими глазами, ибо тот цвет, который я считаю белым, и который белым считаешь ты, внезапно для тебя стал красным.

если ты зерна не видишь, это не значит, что его не видят все;

а кто видит? пытаются - да. но безуспешно.

ты никто, что-бы говорить за всех;

ты тоже.

кидаясь говном, себя же говном и мажешь.

это да.

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

лучше контролировать программы, без относительно наличия/отсутствия репы;

в какой раз задаюсь вопросом ЗАЧЕМ? ну пойми ты наконец, УЖЕ есть репа, есть ПМ, и твой основной эпикфэйл - стратегический: скажи любому Ъ ЛОРовцу, что его rpm|aptitude|yum - говно, так он тебя в этом говне сразу и закопает. А ты умудрился сказать, что ВСЕ ПМ - говно, вот тебя все и закапывают.

иметь возможность вести несколько версий программы, не парясь c prefix и slot;

сейчас у нас /usr/bin, в котором Over9000 программ, ты предлагаешь сделать там Over9000 подкаталогов, в каждом из которых лежит по одной программе? Ну _почти_ в каждом, что ничего принципиально не меняет. Не проще-ли парится с тремя префиксами, чем с твоими Over9000 каталогов?

иметь возможность получать доступ к частям программы через имя программы, на уровне shell, без необходимости дёргать различные тулзы, писать alias'ы и править переменные окружения.

а мы УЖЕ сейчас имеем такой доступ, ибо есть тулзы, написаны алиасы, и исправлены переменные окружения. Понимаешь, УЖЕ.

Вот смотри:

$ man git-
Display all 148 possibilities? (y or n)
git-add                       git-diff-tree                 git-merge-one-file            git-rev-list
git-am                        git-difftool                  git-merge-tree                git-rev-parse
git-annotate                  git-fast-export               git-mergetool                 git-revert
git-apply                     git-fast-import               git-mergetool--lib            git-rm
git-archimport                git-fetch                     git-mktag                     git-send-email
git-archive                   git-fetch-pack                git-mktree                    git-send-pack
git-bisect                    git-filter-branch             git-mv                        git-sh-i18n
git-blame                     git-fmt-merge-msg             git-name-rev                  git-sh-i18n--envsubst
git-branch                    git-for-each-ref              git-notes                     git-sh-setup
git-bundle                    git-format-patch              git-p4                        git-shell
git-cat-file                  git-fsck                      git-pack-objects              git-shortlog
git-check-attr                git-fsck-objects              git-pack-redundant            git-show
git-check-ref-format          git-gc                        git-pack-refs                 git-show-branch
git-checkout                  git-get-tar-commit-id         git-parse-remote              git-show-index
git-checkout-index            git-grep                      git-patch-id                  git-show-ref
git-cherry                    git-gui                       git-peek-remote               git-stage
git-cherry-pick               git-hash-object               git-prune                     git-stash
git-citool                    git-help                      git-prune-packed              git-status
git-clean                     git-http-backend              git-pull                      git-stripspace
git-clone                     git-http-fetch                git-push                      git-submodule
git-column                    git-http-push                 git-quiltimport               git-svn
git-commit                    git-imap-send                 git-read-tree                 git-symbolic-ref
git-commit-tree               git-index-pack                git-rebase                    git-tag
git-config                    git-init                      git-receive-pack              git-tar-tree
git-count-objects             git-init-db                   git-reflog                    git-unpack-file
git-credential                git-instaweb                  git-relink                    git-unpack-objects
git-credential-cache          git-log                       git-remote                    git-update-index
git-credential-cache--daemon  git-lost-found                git-remote-ext                git-update-ref
git-credential-store          git-ls-files                  git-remote-fd                 git-update-server-info
git-cvsexportcommit           git-ls-remote                 git-remote-helpers            git-upload-archive
git-cvsimport                 git-ls-tree                   git-remote-testgit            git-upload-pack
git-cvsserver                 git-mailinfo                  git-repack                    git-var
git-daemon                    git-mailsplit                 git-replace                   git-verify-pack
git-describe                  git-merge                     git-repo-config               git-verify-tag
git-diff                      git-merge-base                git-request-pull              git-web--browse
git-diff-files                git-merge-file                git-rerere                    git-whatchanged
git-diff-index                git-merge-index               git-reset                     git-write-tree
Теперь рассказывай, зачем мне какой-то каталог? /usr/bin/371387heh3ej8u328nhje2jj/ для этого git'а? ЧТО он даёт?

Собственно полученный id выступает в роли идентификатора для всех частей программы

технически это не реализуемо. Причина проста - ежели автор разрезал программу не несколько частей, то очевидно, что это не просто так. Возможно эти части X Y будут использоваться в некой Z, и какой тогда им надо присвоить id? Возможно также, что Y будет использовать A, а вот X можно юзать и самостоятельно. Наша СУБД должна быть построена по принципу «многие со многими» Вот, нагуглил для самых маленьких: http://www.codenet.ru/progr/vbasic/vb_db/1.php Ну в крайнем случае - один ко многим. Твоя структура предполагает жёсткую связь один к одному, в ней каждая программа имеет свой ID. IRL не взлетит. Проверено.

Конечно есть жертвы, основная из которых и которую не принимают, это human-readable path (hrp) - по сути всё недопонимание из-за того, что за hrp видят KISS и недоумевают - почему вдруг пути до программы и её компонент должны стать чем-то сложным

я тоже не понимаю.

но нет тут ничего сложного, взгляните в теже fstab почему для монтирования стали использовать label и uuid - да потому, что захотелось удобства.

не по этому. Во первых, я и подавляющая часть админов так и используют /dev/sdX, во вторых метки тут вообще не причём, ибо совсем не похоже на нечитаемые id, а как раз наоборот, и в третьих, UUID _пришлось_ ввести по необходимости, просто по той причине, что юзер - тупой дебил, и не в состоянии даже придумать название ФС. Вот и приходится системе придумывать самостоятельно. В этом смысле UUID это как в венде «Новая Папка 16», только этот UUID уникальный.

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

по поводу ТП - у тебя стратегия как у ТП - сначала ты противопоставил себя всему ЛОРу, а потом ты подвергся травли. Ну кто так делает-то? Зайди на сайт овуляшек, и обзови тамошних посетительниц тупыми плодящими нищету самками. И там тебя затравят.

Запомни - ПМ это Святое. Не нужно на него покушаться.

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

«снег»

На «снегу» нет поляризационного фильтра, вот он для тебя и выглядит белым. И врачебные ошибки тоже не редкость, да и не врач ты.

а кто видит? пытаются - да. но безуспешно.

Опять болтаешь за всех.

ты тоже.

А я и не пытаюсь за всех болтать, в отличи от тебя, если ты о статье, лишь со своей колокольни смотрю (через свои фильтры).

это да.

О, ну надо-же, твоё чсв раздвинулось и допустило правоту другого!

rnz
()
Ответ на: комментарий от drBatty

ты бредишь? ну даже если такое произошло IRL, то

О теперь не утверждение! Твоё чсв действительно пошло на убыль.

1. можно обновить клиенту programname1, потому как странно иметь в тестинге изменённую до неузнаваемости версию.

Нельзя - причин может быть чуть менее чем ∞.

2. можно тестинг даунгрейдить до состояния в продакшене.

Это не применимо для многих ситуаций, читай ответ на предыдущий пункт.

3. VCS

Колумб?

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

На «снегу» нет поляризационного фильтра, вот он для тебя и выглядит белым.

ЩИТО?

И врачебные ошибки тоже не редкость, да и не врач ты.

не в этом случае.

Опять болтаешь за всех.

мнение этих наших «всех» ты можешь сам посмотреть в постах выше (не сомневаюсь, что и ниже).

О, ну надо-же, твоё чсв раздвинулось и допустило правоту другого!

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

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

Нельзя - причин может быть чуть менее чем ∞.

назови хоть одну, которая приведёт к необходимости использования твоих id?

читай ответ на предыдущий пункт.

аналогично.

И ты так и не ответил:

технически это не реализуемо. Причина проста - ежели автор разрезал программу не несколько частей, то очевидно, что это не просто так. Возможно эти части X Y будут использоваться в некой Z, и какой тогда им надо присвоить id? Возможно также, что Y будет использовать A, а вот X можно юзать и самостоятельно. Наша СУБД должна быть построена по принципу «многие со многими» Вот, нагуглил для самых маленьких: http://www.codenet.ru/progr/vbasic/vb_db/1.php Ну в крайнем случае - один ко многим. Твоя структура предполагает жёсткую связь один к одному, в ней каждая программа имеет свой ID. IRL не взлетит. Проверено.

сейчас у нас /usr/bin, в котором Over9000 программ, ты предлагаешь сделать там Over9000 подкаталогов, в каждом из которых лежит по одной программе? Ну _почти_ в каждом, что ничего принципиально не меняет. Не проще-ли парится с тремя префиксами, чем с твоими Over9000 каталогов?

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

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

Колумб?

для тебя - да. Только у тебя

в пакетной базе уже нет этого пакета - устарел пару месяцев назад и был выкинут/обновлён до не узнаваемости.

У меня такой проблемы нет, и быть НЕ может.

Ну и ещё раз - какой id ты присвоишь данному пакету? id программы, которая его использует, или персональный уникальный id?

Если первое, то почему ты этот пакет не заковырял в пакет с программой, которая его использует?

Если второе, то как ты найдёшь id2 имея только id1?

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

А ты умудрился сказать, что ВСЕ ПМ - говно, вот тебя все и закапывают.
ПМ это Святое. Не нужно на него покушаться.

Ага, прям так и вижу негодующую «толпу» целующих святой skeleton пакета для очередного ПМ.

Не проще-ли парится с тремя префиксами, чем с твоими Over9000 каталогов?

Мне думается не проще. Over9000 каталогов не просят кушать (читай лишних ручных действий).

а мы УЖЕ сейчас имеем такой доступ, ибо есть тулзы, написаны алиасы, и исправлены переменные окружения. Понимаешь, УЖЕ. ... Теперь рассказывай, зачем мне какой-то каталог? /usr/bin/371387heh3ej8u328nhje2jj/ для этого git'а? ЧТО он даёт?

Туча алиасов? Опять же из-за стремления к удобству - лень же каждый раз вспоминать команды git. Поменяй в этой схеме git, на какую нибудь субд или какой-нибудь web-сервер, которых частенько надо держать в нескольких версиях. А ну да --prefix - ручной труд облагораживает, мы же не такие ленивые, да?

технически это не реализуемо.

fhs с тобой не согласа - /etc, /bin, /lib, /usr, /usr/bin, /usr/lib, /usr/share, /usr/src и и.д. - прямо говорят тебе - ты ошибаешься.

Причина проста - ежели автор разрезал программу не несколько частей, то очевидно, что это не просто так. Возможно эти части X Y будут использоваться в некой Z, и какой тогда им надо присвоить id? Возможно также, что Y будет использовать A, а вот X можно юзать и самостоятельно.

А теперь вспоминай о бритве Оккама. И возвращаясь «не инженер» - когда в машине, что-то заёбывающе стучит, то порой что-бы устранить проблему приходится извлечь двигатель, разобрать его и принять решение о его замене.

Наша СУБД должна быть построена по принципу «многие со многими» Вот, нагуглил для самых маленьких: http://www.codenet.ru/progr/vbasic/vb_db/1.php Ну в крайнем случае - один ко многим. Твоя структура предполагает жёсткую связь один к одному, в ней каждая программа имеет свой ID. IRL не взлетит. Проверено.

Это не субд, а простое key-value.

я тоже не понимаю.

Ничего страшного, не ты один.

не по этому.

ой ли?

Во первых, я и подавляющая часть админов так и используют /dev/sdX,

Ты да, а за подавляющую часть админов ты не ведаешь. Хватит уже говорить за всех.

метки тут вообще не причём

devlabel=$(pwgen -n 18 -1) destdev=«/dev/sda1» mkfs.ext4 -L $devlabel $destdev; echo «LABEL=$devlabel /boot > /etc/fstab

UUID _пришлось_ ввести по необходимости, просто по той причине, что юзер - тупой дебил, и не в состоянии даже придумать название ФС.

А может ради ленивых админов, которых задрало маяться именованием и/или с попыткой определить, а тот-ли он винт сейчас воткнул на свой стенд?

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

Ага, прям так и вижу негодующую «толпу» целующих святой skeleton пакета для очередного ПМ.

ну как-то так...

Мне думается не проще. Over9000 каталогов не просят кушать (читай лишних ручных действий).

не понимаю - каких-же именно действий?

Туча алиасов? Опять же из-за стремления к удобству - лень же каждый раз вспоминать команды git. Поменяй в этой схеме git, на какую нибудь субд или какой-нибудь web-сервер, которых частенько надо держать в нескольких версиях.

ну поменял. И что? Какие ручные действия требуются для СУБД или web, окромя start/stop?

А ну да --prefix - ручной труд облагораживает, мы же не такие ленивые, да?

нет. ленивые. мне вот лень создавать ручками Over9000 каталогов. И писать скрипт для их создания - тоже лень. Особенно учитывая полную бесполезность этих действий.

fhs с тобой не согласа - /etc, /bin, /lib, /usr, /usr/bin, /usr/lib, /usr/share, /usr/src и и.д. - прямо говорят тебе - ты ошибаешься.

Оно мне прямо говорит о том, что у файла должен быть один из немногочисленного множества, удобочитаемый префикс, каждый из которых недвусмысленно говорит о том, что это за файл, и зачем он нужен. О чём говорит префикс /jsfhju3897shjcj342jkjsndv/ мне не понятно(особенно учитывая, что в твоей системе Over9000 таких префиксов, и все они одинаково безликие и непонятные). может ты расскажешь?

Причина проста - ежели автор разрезал программу не несколько частей, то очевидно, что это не просто так. Возможно эти части X Y будут использоваться в некой Z, и какой тогда им надо присвоить id? Возможно также, что Y будет использовать A, а вот X можно юзать и самостоятельно.

А теперь вспоминай о бритве Оккама.

не понял. ты что, предлагаешь ВСЕ программы сделать независимыми друг от друга? Сделать ОДНО малофункциональное ядро с малоюзабельным гуем, которое меняется 1 раз в 10 лет? И что-бы ВСЕ программы тянули за собой ВЕСЬ свой функционал, которого нет в этом древнем и малофункциональном ядре-гуе? А зачем мучаешься, поставь себе Windows, там именно так всё и сделано. Вплоть до твоих любимых непонятных id в реестре.

(Почему я припомнил ТП? Потому-что, ТП не только не знает, но и знать НЕ ЖЕЛАЕТ технических деталей реализации. Но своё видение она таки выскажет. И это будет очень смешно послушать.)

Это не субд, а простое key-value.

простое key-value это тоже СУБД. И такого в данной ситуации недостаточно. По любому придётся тебе делать симлинки/хардлинки между каталогами, что-бы не хранить одно и то же в Over9000 экземпляров. Например, _каждая_ программа должна держать в своём каталоге линк на glibc. Ну или одну из Over9000 версий glibc. Ты вообще представляешь, какой Адъ одминить систему, в которой Over9000 версий glibc? А теперь вспомни, сколько всего либ есть кроме этой твоей glibc?

Ничего страшного, не ты один.

и ты ещё спрашиваешь, почему я за всех говорю?

Ты да, а за подавляющую часть админов ты не ведаешь.

откуда тебе это известно?

devlabel=$(pwgen -n 18 -1) destdev=«/dev/sda1» mkfs.ext4 -L $devlabel $destdev; echo «LABEL=$devlabel /boot > /etc/fstab

и что?

А может ради ленивых админов, которых задрало маяться именованием и/или с попыткой определить, а тот-ли он винт сейчас воткнул на свой стенд?

эти админы придумали удобочитаемые метки дисков, ещё во времена FDD в продакшене. UUID придумали несколько позже, когда стало ясно, что админов на все ПК не хватит, а различать диски как-то всё равно надо.

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

Так, я понял твою, затею. Но на мой взгляд она идет вразрез стандарту, GNU/Linux под такую архитектуру не создавался, поэтому зачем так изголяться над ним? Зачем тратишь время на споры? Возьми лучше сделай хоть что то, что можно пощупать. Даже к примеру форкни GoboLinux и переправь там все под свою идею. То что ты на хабре статью создал - это правильно! То что тебя обсмеяли здесь - нет! [Вредный совет]Возьми создай на форуме nixos тему с осмеиванием ЛОР-а и ссылкой на эту тему[/Вредный совет]. Понимаешь, здесь люди которые лучше привыкнут к ПМ (да они уже привыкли), чем будут перепиливать линукс и переучиваться на новый манер.

jamy
()
Ответ на: комментарий от drBatty

ну как-то так...

продолжай в том же духе и когда нибудь дух святого skeleton'а оценит твои старания.

не понимаю - каких-же именно действий?

да тех же самых --prefix=/usr/local/<какую-бы ещё хуйню придумать, что-бы обозвать, осенило! имя+версия в самый разу будут, ипать-копать красот-а-а!>

ну поменял. И что? Какие ручные действия требуются для СУБД или web, окромя start/stop?

начни с установки, продолжай до биндига на порты

нет. ленивые. мне вот лень создавать ручками Over9000 каталогов. И писать скрипт для их создания - тоже лень.

Где я предлагал их делать ручками или писать скрипт? Это должен делать ПМ, дёргая какой-то общий api.

Оно мне прямо говорит о том, что у файла должен быть один из немногочисленного множества, удобочитаемый префикс, каждый из которых недвусмысленно говорит о том, что это за файл, и зачем он нужен.

Уже выяснил зачем /var/lib/Makefile?

О чём говорит префикс /jsfhju3897shjcj342jkjsndv/ мне не понятно(особенно учитывая, что в твоей системе Over9000 таких префиксов, и все они одинаково безликие и непонятные). может ты расскажешь?

А ты не глазей на него, он тебе нафиг не сдался, да и средства представления могут выводить теме имена программ вместо id.

не понял. ты что, предлагаешь

Перечитывай. Дальнеший твой троллинг лишен смысла.

простое key-value это тоже СУБД.

Иди мат.часть учи.

Например, _каждая_ программа должна держать в своём каталоге линк на glibc.

Не должна: а) для всех программ может быть общий enviroment окружение, б) каждая программа может иметь собственный enviroment.

и ты ещё спрашиваешь, почему я за всех говорю?

Это не значит, что ты можешь говорить за всех. И я не спрашиваю.

откуда тебе это известно?

Из физики и биологии.

почему для монтирования стали использовать label и uuid - да потому, что захотелось удобства.

не по этому.

devlabel=$(pwgen -n 18 -1)...

и что?
эти админы придумали удобочитаемые метки дисков, ещё во времена FDD в продакшене. UUID придумали несколько позже, когда стало ясно, что админов на все ПК не хватит, а различать диски как-то всё равно надо.

Т.е. ты ещё не понял, что ты пришёл к тому о чём я сказал изначально - захотелось удобства, а на каких исторических этапах - не важно.

rnz
()
Ответ на: комментарий от jamy

Возьми лучше сделай хоть что то, что можно пощупать. Даже к примеру форкни GoboLinux и переправь там все под свою идею

Креативщик не может ничего сделать. Он может лишь креативить.

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

Креативщик не может ничего сделать. Он может лишь креативить.

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

jamy
()
Ответ на: комментарий от rnz

продолжай в том же духе и когда нибудь дух святого skeleton'а оценит твои старания.

а я что? мне-то как-то поровну, у меня и ПМа в обычном смысле нет. Не нужен.

да тех же самых --prefix=/usr/local/

а оно дефолтное... Мимо.

начни с установки, продолжай до биндига на порты

установка - сама. про биндинги не в курсе.

Где я предлагал их делать ручками или писать скрипт? Это должен делать ПМ, дёргая какой-то общий api.

т.е. ты прдлагаешь патчить существующий ПМ? Выше я уже говорил, что такой патч для installpkg я напишу за 5 минут. Но, ты не ответил на вопрос

1. Зачем?

2. а что делать с 100500 пакетов и слакобильдов, которые про это не знают?

Уже выяснил зачем /var/lib/Makefile?

$ ll /var/lib/Makefile
/bin/ls: невозможно получить доступ к /var/lib/Makefile: Нет такого файла или каталога

как можно узнать сущность несуществующего?

А ты не глазей на него, он тебе нафиг не сдался, да и средства представления могут выводить теме имена программ вместо id.

ну хорошо, не буду. Буду только через средства. Теперь расскажи, что это за средства, и как они узнают, что им показывать? И почему надо держать СУБД, в которой написано, что jfjkjdfjvjhnjdvnjk43nj это dolphin, и показывать dolphin, если можно просто назвать файл dolphin и не парить мозг ни себе, ни окружающим?

Иди мат.часть учи.

я учил. тебе тоже полезно узнать что такое «Первая нормальная форма (1NF)».

Т.е. ты ещё не понял, что ты пришёл к тому о чём я сказал изначально - захотелось удобства, а на каких исторических этапах - не важно.

UUID это вынужденная мера. Для файла программы это не нужно. Мне всё равно, какой именно dolphin, главное - что-бы он работал в данной конкретной ОС. Потому придумывать для него id не нужно. Если это следующая, более фичастая версия - я буду только рад.

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

его склад ума достаточно инженерский

Тонкая шутка.

Kindly_Cat
()
Ответ на: комментарий от drBatty

а я что? мне-то как-то поровну, у меня и ПМа в обычном смысле нет. Не нужен.

А нафига ты тогда адвокатом заделался? Тебе не нужно, а другим может нужно. Ты себя считаешь ниндзякаратеадмином способным однострочником космические корабли запускать, а другие не шибко-то отделяют себя от пользователей, которым просто нужны удобства.

а оно дефолтное... Мимо.

Если тебе не встречается что-то, то это не значит что этого нет. Например, более чем достаточно ситуаций, когда надо поддержать N mysql серверов разных версий и с разными настройками, где N > 1.

установка - сама. про биндинги не в курсе.

Да нифига не сама, вникай в предыдущий ответ, в том числе и про настройки (к коим относится биндинг на порт).

т.е. ты предлагаешь патчить существующий ПМ? Выше я уже говорил, что такой патч для installpkg я напишу за 5 минут. Но, ты не ответил на вопрос
1. Зачем?

Об этом написано в статье, размыто в комментариях на хабре и по текущему топику. Перечитывай и вникай или забей.

2. а что делать с 100500 пакетов и слакобильдов, которые про это не знают?

Выкинуть/пропатчить пм/конвертировать/использовать враппер/ещё что нибудь.

как можно узнать сущность несуществующего?

Второй раз: если тебе не встречается что-то, то это не значит что этого нет.

что это за средства, и как они узнают, что им показывать?

В топике есть, перечитай.

Иди мат.часть учи.

я учил. тебе тоже полезно узнать что такое «Первая нормальная форма (1NF)».

Т.е. теперь реляционная модель о БД, вдруг стала СУБД? Ну-ну.

Т.е. ты ещё не понял, что ты пришёл к тому о чём я сказал изначально - захотелось удобства, а на каких исторических этапах - не важно.

UUID это вынужденная мера.

Это не отменяет того факта, что сделано это для удобства.

Для файла программы это не нужно. Мне всё равно, какой именно dolphin, главное - что-бы он работал в данной конкретной ОС. Потому придумывать для него id не нужно. Если это следующая, более фичастая версия - я буду только рад.

И ещё раз: если тебе не встречается что-то, то это не значит что этого нет.

rnz
()
Ответ на: комментарий от jamy

Ну на мой взгляд вразрез с GNU она не вступает, GNU/Linux под очень многие архитектуры не создавался, смотрим на NixOS, на Android, на SmartTV, на роутеры и Cisco ASA, да и других примеров полно вплоть до систем управления автомобилями и спутниками и везде свой огород, который на самом деле не очень-то и нужен. Десятки, если не сотни тысяч разношерстных репозиториев с одними и теми же программами, с одинаковыми параметрами сборки, но с разной упаковкой, да нафига? Каждый линуксойд обязательно пуляя косточки в windows скажет, там не репы (что уже вроде не так), что-бы найти что-то надо рыть торрнеты и т.п. и правильно скажет. Но зачем всё эти разношерстные репы, одинаковые внутри в GNU/Linux? Ведь, например, всем же нравится, что работка ядра, несмотря на децентрализованный подход, являет очередное ядро централизованным образом. А в конечном итоге по зеркалам разбредается одна и та же сборка, которую обвешивают уже патчами и облагораживают под собственные дистрибутивы и являют свой «неповторимый» пакет под свою «неповторимую» систему.

По поводу споров я высказался в статье - нужна масштабная инициатива, обсуждение, такое-же как в отношении FHS.

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

смотрим на NixOS, на Android, на SmartTV, на роутеры и Cisco ASA, да и других примеров

Ну про NixOS не скажу (не смотрел ее). А вот все остальные перечисленные и не перечисленные, работают все по одному принципу posix-совместимых систем. Так изварот который вы предложили, на мой взгляд лешит GNU/Linux такого статуса, я думаю мало кто такое потерпит, все наоборот стараются быть ближе к posix, но при этом не привнести какие то мелкие удобшества

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

но при этом не привнести какие то мелкие удобшества

fix

jamy
()
Ответ на: комментарий от rnz

А нафига ты тогда адвокатом заделался? Тебе не нужно, а другим может нужно.

ЧТО нужно? Очередная реализация 1NF СУБД для программ и их файлов? А она УЖЕ есть. И прекрасно работает. И покрывает потребности 99.9% юзеров и разработчиков. А что нужно этому 0.1% я тупо не представляю, а ты не можешь объяснить.

Ты себя считаешь ниндзякаратеадмином способным однострочником космические корабли запускать, а другие не шибко-то отделяют себя от пользователей, которым просто нужны удобства.

корабли пока не получается. Но не вижу причин, почему однострочник негож для юзера. Наоборот - очень удобно юзеру дать однострок, который сделает всё, что надо этому юзеру. Например патч Брамина вычищает идиотов, которые запускают всякую НЁХ под рутом.

Если тебе не встречается что-то, то это не значит что этого нет. Например, более чем достаточно ситуаций, когда надо поддержать N mysql серверов разных версий и с разными настройками, где N > 1.

для этого придумали каталоги /usr и окружение $PATH. По умолчанию там есть только система (в /usr/bin), и уютная топка локалхоста (/usr/local/), но ничто не мешает создать там N каталогов с разными вариантами.

Об этом написано в статье, размыто в комментариях на хабре и по текущему топику. Перечитывай и вникай или забей.

да я читал. Всё я прекрасно понял - ты думаешь, у тебя есть тривиальная СУБД типа key-value, с уникальным ключом (имя) и программой(value), которая взаимно однозначно соответствует данному ключу. Тебе всё нравится, кроме уникальности ключа. Ты предлагаешь более сложную 1NF, в которой имя не будет уникальным. Т.е. можно будет поставить любое число программы XYZ. Для этого ты решил использовать известный Over9000 лет велосипед - искусственный уникальный id. Ну как в магазине артикул товара. Тогда у тебя получится две таблицы:

1. ключ -> файлы. Тут ты хочешь юзать ФС, создавая каталоги с именем ключа.

2. ключ -> имя. Тут имя не уникально, и можно сделать хоть 100 одних и тех же имён, с разными ключами конечно. Что это за таблица - ты не знаешь ещё. Ещё ты не придумал, как обеспечить устойчивость таблицы, необходимою для взаимной однозначности (что-бы не путать ПО с одним именем). Ещё не придумал, как будет выбираться ПО по умолчанию, если есть варианты. Ещё ты не придумал механизма трансляции команды dolphin в файл /usr/bin/kdfsjuu4jn4rjn3fjkn4/dolphin

Ну и самое главное: ты так и не объяснил, ЗАЧЕМ это надо, если ставить разные варианты программы в разные подкаталоги /usr/* я могу прямо сейчас, без всяких твоих изобретений?

Выкинуть/пропатчить пм/конвертировать/использовать враппер/ещё что нибудь.

ради чего нужно потратить столько сил и времени? даже в слаке(там пакетов немного)

Т.е. теперь реляционная модель о БД, вдруг стала СУБД? Ну-ну.

ну ты придумал и хочешь навелосипедить «новую» СУБД, используя БД первой нормальной формы из двух таблиц связанных уникальным ключом. И тебя не волнует, что такая СУБД УЖЕ есть, просто ты не знаешь о ней. Скорее - не знал, когда придумал, сейчас может знаешь, но ТВОЯ ИДЕЯ - это уже идея фикс. Патология.

Это не отменяет того факта, что сделано это для удобства.

ладно, не отменяет. И что? Я могу поменять местами HDD, и система отлично загрузится. Это удобно. Что я должен менять, что-бы ощутить удобство твоих id? Я вот на днях поменял e2fsprogs на новую, и это - удобно. Как была mkfs, так и осталась mkfs. Но новая. Удобно. А был-бы id, понадобился-бы костыль, для его смены. Потому как у меня ДРУГАЯ mkfs.

И ещё раз: если тебе не встречается что-то, то это не значит что этого нет.

и ещё раз - мне много чего встречается. И мне удобнее, что программа сохраняет своё имя, даже когда меняется. В _большинстве_ случаев. Иногда - не так, бывает. Но это редко, и для этого УЖЕ есть префиксы.

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

Но зачем всё эти разношерстные репы, одинаковые внутри в GNU/Linux?

ты сам ответил на свой вопрос - у каждого админа своё подход к Правильной и Безопасной установке ПО. Потому-то и есть Over9000 разных дистров. И что в этом плохого - для решения разных задач оптимальны _разные_ пути.

А в конечном итоге по зеркалам разбредается одна и та же сборка

и что ты предлагаешь? похоронить всё, и юзать твой подход? А ничего, что в 99% случаев нужна ОДНА версия программы?

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

А ничего, что в 99% случаев нужна ОДНА версия программы?

Тем, кому нужна одна версия - непонимающее быдло. Пользователи, ставящие кучу версий одной программы - вот на кого нужно равняться.

Kindly_Cat
()
Ответ на: комментарий от rnz

С чего вы взяли, что теряется совместимость с posix?

К примеру в posix-е где-то запрещено вызывать команды по полному имени с путем? Я думаю нет. Тогда получается есть программы которые являются posix-совместимыми и вызывают другие программы (например те-же ls и ps) по полному имени. В вашей системе они перестанут работать.

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

К примеру в posix-е где-то запрещено вызывать команды по полному имени с путем? Я думаю нет. Тогда получается есть программы которые являются posix-совместимыми и вызывают другие программы (например те-же ls и ps) по полному имени. В вашей системе они перестанут работать.

Плохой пример. POSIX не говорит, в каком именно каталоге лежат ls и ps. Вызывать по полному пути не запрещено, но для стандартных команд определён способ запуска именно через $PATH.

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

За захардкоженные пути нужно вообще убивать нафиг.

Kindly_Cat
()
Ответ на: комментарий от const86

Ну да, пример действительно надуманный, просто первое что пришло в голову.

jamy
()
Ответ на: комментарий от rnz

С чего вы взяли, что теряется совместимость с posix?

ваще-то вы так и не рассказали, каким способом из /usr/jernreu4432130--12me3i/dkdfkds ситаема узнает, что надо запустить XYZ? Это - вопрос, на который ещё нет ответа.

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

Конечно нет! Это же пакетные менеджеры, а они не нужны! Нужно как-то иначе. Я не знаю как, но точно как-то иначе.

Kindly_Cat
()
Ответ на: комментарий от drBatty

ЧТО нужно?

Уже сказал - удобства, какие тоже сказал. Да, тебе это кажется мелочью, однако пример с label и uuid тебе показал - мелочи важны.

Очередная реализация 1NF СУБД для программ и их файлов? А она УЖЕ есть. И прекрасно работает. И покрывает потребности 99.9% юзеров и разработчиков. А что нужно этому 0.1% я тупо не представляю, а ты не можешь объяснить.

Вспомнилось, в преддверии появления windows, пользователи dos тоже пребывали в прострации. И ещё вспомнилось, как windows-пользователи любят сказать - «нах этот линукс с его 0.1%». Ну и калькулятор у тебя - потолочный, а значит его прецизионность не вызывает доверия.

патч Брамина

Ты сама доброта.

для этого придумали каталоги /usr и окружение $PATH. По умолчанию там есть только система (в /usr/bin), и уютная топка локалхоста (/usr/local/), но ничто не мешает создать там N каталогов с разными вариантами.

КЭП? Не мешает, но (верну тебе) зачем? Вновь ручной труд?

у тебя есть тривиальная СУБД типа key-value, с уникальным ключом (имя) и программой(value), которая взаимно однозначно соответствует данному ключу. Тебе всё нравится, кроме уникальности ключа.

На самом деле мне и уникальность ключа нравится.

Ты предлагаешь более сложную 1NF, в которой имя не будет уникальным. Т.е. можно будет поставить любое число программы XYZ.

Я не предлагаю делать имя не уникальным, оно вполне может быть уникальным, так же как и сейчас, но оно может быть и не уникальным, что на мой взгляд не является проблемой, т.к. программа вполне может идентифицироваться по ключу или другой характеристике (о чём скажу ниже).

Для этого ты решил использовать известный Over9000 лет велосипед - искусственный уникальный id.

Ты хотел сказать суррогатный ключ, да.

1. ключ -> файлы. Тут ты хочешь юзать ФС, создавая каталоги с именем ключа.
2. ключ -> имя. Тут имя не уникально, и можно сделать хоть 100 одних и тех же имён, с разными ключами конечно. Что это за таблица - ты не знаешь ещё.

Почему не знаю? По мне для этого вполне годится plain text с набором полей или каталог (на манер /etc/installed/id/{progname.desc,base.conf}). Главное, что «ключ -> имя» можно легко перестроить.

Ещё ты не придумал, как обеспечить устойчивость таблицы, необходимою для взаимной однозначности (что-бы не путать ПО с одним именем).

Тут скорее вопрос в выборе средств, а не в придумывании, в случае если имя не уникально, уникальность может быть обеспечена как на стадии установки, так и позднее, например порядковым номером (просто id-postfix) и/или /usr/desc/id/description | /etc/id/.description и/или тем же xattr, да мало-ли вариантов.

Ещё не придумал, как будет выбираться ПО по умолчанию, если есть варианты.

Опять же вопрос выбора, вполне сгодится симлинк (на манер, как это сделано в debian в /etc/alternatives) и/или это может быть первый установленный (и все обновления по умолчанию применяются к нему).

Ещё ты не придумал механизма трансляции команды dolphin в файл /usr/bin/kdfsjuu4jn4rjn3fjkn4/dolphin

Про симлинк сказал и /usr/bin/env ещё не отменили.

Ну и самое главное: ты так и не объяснил, ЗАЧЕМ это надо, если ставить разные варианты программы в разные подкаталоги /usr/* я могу прямо сейчас, без всяких твоих изобретений?
ради чего нужно потратить столько сил и времени? даже в слаке(там пакетов немного)

Читай первый абзац этого сообщения.

ну ты придумал и хочешь навелосипедить «новую» СУБД, используя БД первой нормальной формы из двух таблиц связанных уникальным ключом.

Вот так будет вернее, но лично у меня язык не поворачивается назвать это СУБД.

И тебя не волнует, что такая СУБД УЖЕ есть, просто ты не знаешь о ней. Скорее - не знал, когда придумал, сейчас может знаешь, но ТВОЯ ИДЕЯ - это уже идея фикс. Патология.

Волнует, знаю, знал, не нравится и не нравилось, потому что:

  • бессмысленно вести базу для отслеживания установленного, что делают все пм, по которой не всегда возможно отследить установленое, что свойственно всем пм;
  • зачем вести базу установленного, если установленное может само являть базу, по которой достаточно иметь индекс;
  • xattr на манер «тегировать всё» - не спасает, т.к. вероятна процедура «перетегировать всё», читай лопатить кучу объектов на запись;

ладно, не отменяет. И что?
Что я должен менять, что-бы ощутить удобство твоих id?

Лично ты ничего не должен. А примеры удобства были приведены ранее. Ты их счёл ничтожными, это твоё личное дело. Однако, ответ в первом абзаце этого сообщения.

Я вот на днях поменял e2fsprogs на новую
мне удобнее, что программа сохраняет своё имя, даже когда меняется.

А разве я предлагал от этого отказаться?

Иногда - не так, бывает. Но это редко, и для этого УЖЕ есть префиксы.

Спасибо и на этом, признал хотя-бы что бывает. А вот помножь своё редко на кол-во админов, которых ты зна..., а лучше вообще на кол-во пользователей linux - и твоё «редко» превратится в «часто» многих.

rnz
()
Ответ на: комментарий от drBatty

ты сам ответил на свой вопрос

Ок, задач много, людей разных тоже много, согласен, пусть живут.

и что ты предлагаешь? похоронить всё, и юзать твой подход?

Я предлагаю, для начала, пересмотреть устоявшиеся подходы к действиям связанным с установкой/конфигурированием/удалением программ. Потому-что текущие подходы, по моему мнению, ущербны в основе. И попутно я предлагаю возможный вариант решения. Хоронить всё или нет - не зависит от моих предложений или желаний.

А ничего, что в 99% случаев нужна ОДНА версия программы?

Про калькулятор уже сказал.

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

Уже сказал - удобства, какие тоже сказал. Да, тебе это кажется мелочью, однако пример с label и uuid тебе показал - мелочи важны.

флешка TFLY у меня монтируется в /media/TFLY, какой у неё UUID меня не волнует. Это удобно. Если-бы она монтировалась в /media/jdsjkds743278bd32jhb/TFLY это было-бы неудобно. И это не мелочь - я не желаю методом тыка находить нужную флешку как в венде, где они монтируются как «диск E:, F:, G: и т.д.».

Вспомнилось, в преддверии появления windows, пользователи dos тоже пребывали в прострации. И ещё вспомнилось, как windows-пользователи любят сказать - «нах этот линукс с его 0.1%». Ну и калькулятор у тебя - потолочный, а значит его прецизионность не вызывает доверия.

ничего тебе не вспомнилось: никакой прострации не было. Была оболочка над досом (кстати не одна), которую не тянул тогдашний CPU. И любой идиот понимал, что проблема в его компьютере, а не в оболочке.

Что до Linux, то мнение домохозяек никого не волнует, кроме маркетологов. А мнение маркетологов никакого отношения к технике не имеет, например маркетологи из ferarri зарабатывают намного больше, чем маркетологи из Камаза. Что совсем не говорит об мощности, надёжности, и прочих характеристик продукции ferrari и камаза.

КЭП? Не мешает, но (верну тебе) зачем? Вновь ручной труд?

где ты видишь «ручной труд»? у обычного юзера /usr/local пустая, и никак ему не мешает. Он и знать про неё не обязан, ибо его ПМ ставит ПО не туда. Эта директория нужна исключительно разработчику, для тестирования, и программы устанавливаемые разработчиком ставятся именно туда, без всякого «труда». Кому ещё надо ставить 2 версии одной программы?

На самом деле мне и уникальность ключа нравится.

тебе нравится уникальность ключа-имени? Зачем тогда огород городить со своими id???

Я не предлагаю делать имя не уникальным, оно вполне может быть уникальным, так же как и сейчас, но оно может быть и не уникальным, что на мой взгляд не является проблемой, т.к. программа вполне может идентифицироваться по ключу или другой характеристике (о чём скажу ниже).

включи логику: ключ либо уникальный, либо может быть не уникальным. Третьего не дано. Это как динозавр - либо ты его встретишь, либо нет. Либо ты можешь ставить две XYZ, либо не можешь. Если ты можешь ставить две и более XYZ, но не ставишь - это уже твоя проблема как юзера.

Ты хотел сказать суррогатный ключ, да.

ну в твоей реализации - наверное да. Тебе виднее. Реализации-то ещё нет... Даже описание ты не придумал...

Почему не знаю? По мне для этого вполне годится plain text с набором полей

а по мне - НЕ годится. Ибо выборка из plain text нужного поля отнимет огромное количество времени, пропорционально O(N), а N у нас немалое (Over9000), причём такую выборку надо делать для КАЖДОГО вызова программы. И если в WindowsLike тебе достаточно написать Nero, и весь день писать болванки, то у нас ты запустишь k3b, которая на каждый чих будет вызывать горсть консольных команд.

да мало-ли вариантов.

много. Вот и думай. Как надумаешь - реализовывай. И тогда уже можешь что-то рассказать. А твои фантазии просто смешны.

Ну и самое главное: ты так и не объяснил, ЗАЧЕМ это надо, если ставить разные варианты программы в разные подкаталоги /usr/* я могу прямо сейчас, без всяких твоих изобретений?

ради чего нужно потратить столько сил и времени? даже в слаке(там пакетов немного)

Читай первый абзац этого сообщения.

в Windows у меня появилось графическое окружение, и возможность тыкать мышкой. Это важно. Если ты этого не понимаешь, скачай какой-нибудь консольный графический редактор (такие бывают. Раньше только такие и были).

в Linux у меня появилось много чего. Главное ИМХО - модульность системы и нормальное разделение пользователей и файлов(в венде этого нет by design, и если во времена однопользовательской и однозадачной Win95 это было оправдано, то сегодня это большая помойка)

Ну а что даёт твой подход - я так и не понял.

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

почему «бессмыслено», и почему невозможно отследить?

зачем вести базу установленного, если установленное может само являть базу, по которой достаточно иметь индекс;

потому-что твоей 1NF СУБД недостаточно. Если ты хочешь удалить программу X, то тебе надо что-то сделать с программами, от которых зависит X, и что-то сделать с программами которые зависят от X. Либо ты получишь Slackware, где такие вещи делаются вручную, Патрегом и его юзерами, типа меня. Но даже в Slackware твоя БД не нужна - у нас в качестве индекса (id) выступает полное имя пакета, а в каталоге /var/log/package лежат файлы, с именем id. В каждом файле id имеется полный список всех файлов, которые принадлежат данной программе. Если программу нужно обновить/удалить, ПМ просматривает файл id, и удаляет все файлы из него. Не составит никакого труда поставить две и более программ с разной версией, в разные каталоги но с одним и тем же именем. В том числе можно ставить с помощью ПМ программы, каждую в свой каталог с непонятным id. Потому - ставь слаку, и РЕАЛИЗУЙ свою идею, слака готова к этому.

xattr на манер «тегировать всё» - не спасает, т.к. вероятна процедура «перетегировать всё», читай лопатить кучу объектов на запись;

а тебя ничего не спасёт в этой ситуации. rpm --rebuilddb над твоей гипотетической СУБД будет выполняться не меньше года. Так-то.

А примеры удобства были приведены ранее. Ты их счёл ничтожными, это твоё личное дело.

я не счёл их «ничтожными», я счёл их ненужными. Ибо всё это везде реализовано. Причём реализовано лучше, чем у тебя.

мне удобнее, что программа сохраняет своё имя, даже когда меняется.

А разве я предлагал от этого отказаться?

да. потому-что по твоему у меня поставилась-бы вторая e2fsprog. А зачем мне вторая? ИНОГДА это нужно, но ОЧЕНЬ РЕДКО. Практически всегда нужно именно обновлять. Потому структура системы должна быть оптимизирована именно на обновление, а не на вторую установку. И именно так она оптимизирована сейчас - обновляется автоматом, а вот для повторной установки надо ручки приложить. Ты предлагаешь автоматизировать повторную установку, а при обновлении ручками удалять старую программу, и переводить стрелки на новую. Не нужно.

и твоё «редко» превратится в «часто» многих

если 1 умножить на миллион, получится миллион. Если 9001 умножить на миллион, получится 9001 миллионов. Как не умножай, но 9001 миллионов НАМНОГО больше одного миллиона. Если ты не ГСМ конечно, и не демагог. Только демагоги и ГСМ множат 1*1000000 и радуются, «как много получилось!», при этом умалчивая, или тупо не понимая, что 9001*1000000 таки всё равно ровно в 9001 раз больше.

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

Потому-что текущие подходы, по моему мнению, ущербны в основе.

в основе своей они не ущербны. Как я уже говорил, в слаке именно так и сделано - у каждого пакета есть уникальный id, есть и «каталог» с именем id. В принципе, каталог - это тоже таблица из СУБД с двумя полями имя-id. Ну а в слаке это plain-text файл. Можно сделать и настоящую СУБД, и ещё с зависимостями. Но не нужно. Уже есть RPM и DEB, в которых так и сделали. Ты хочешь сделать слаку, но что-бы в качестве файлов /var/log/package/* выступали каталоги? Дерзай. О результатах отпишись.

Про калькулятор уже сказал.

про демагогов, умножение, и ГСМ я уже ответил. Сколько волка не корми, а у слона всё равно толще.

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

Уже сказал - удобства, какие тоже сказал. Да, тебе это кажется мелочью, однако пример с label и uuid тебе показал - мелочи важны.

флешка TFLY у меня монтируется в /media/TFLY, какой у неё UUID меня не волнует. Это удобно.

В твоей, единоличной, слаке всё ещё средневековье - замечательно! А причём тут другие? В эволюционировавших дистрибутивах флешки монтируются на более унифицированный манер - /run/media/username/<UUID или аналог или LABEL>/ - и это мелочь, но она удобна, особенно когда единоличное отодвигается на второй план.

ничего тебе не вспомнилось

Ну конечно, откуда мне... Только вот на моей памяти и в быту, и в сми, и на bbs'ках было предостаточно срача на манер твоих же «зачем?» в адрес как оболочки(чек) к dos, так и в адрес уже более поздней win95...

А мнение маркетологов никакого отношения к технике не имеет, например маркетологи из ferarri зарабатывают намного больше, чем маркетологи из Камаза. Что совсем не говорит об мощности, надёжности, и прочих характеристик продукции ferrari и камаза.

Т.е. ты как-бы не понял, что ведёшь себя как маркетолог, правда не из ferrari, говоря про проценты пользователей, а по сути вещая за всех?

где ты видишь «ручной труд»? у обычного юзера /usr/local пустая, и никак ему не мешает. Эта директория нужна исключительно разработчику.

Нет, эта директория нужна не только разработчику. Однако, разработчики (использующие результаты труда других разработчиков) значит пусть познают дзен и кунг-фу с набором prefix и скоростным запиливанием ebuild'ов и конфигов? Особо запарившиеся учить кунг-фу, запилили автокунгфугуратор (смотри в сторону chef и т.п.), читай очередной-пм к очередным-пм. А по сути выстругали(и продолжают стругать) костыль к костылю, эдакий гипертрофированный unix-way.

тебе нравится уникальность ключа-имени? Зачем тогда огород городить со своими id???

Ответы даны были ранее. Но ты считаешь, мои доводы не убедительными, аргументируя в основном субъективными утверждениями, выдаваемыми тобой за объективные, да ещё и за общую точку зрения. Иногда ты мою аргументацию находишь убедительной, но трололо внутри тебя не желает с этим мириться, взбрыкивая и брызгаясь очередной гадостью, типа «ГСМ», которое ты порой пытаешься усмирить снисходя с высоты своего чсв до «фантазии».

включи логику: ключ либо уникальный, либо может быть не уникальным.

сам включи логику, я это сказал о value.

а по мне - НЕ годится. Ибо выборка из plain text нужного поля отнимет огромное количество времени, пропорционально O(N), а N у нас немалое (Over9000), причём такую выборку надо делать для КАЖДОГО вызова программы.

Кеширование отменили? По файлу не может существовать свой индекс? Да сегодня в самом забитом дистрибутиве максимум 2000-3000 (пользуюсь своим потолочным калькулятором) установленных пакетов, и на практие это число редко переваливает за 1500, а это ниАчём, даже для шарманки с pentium 100mhz, а тем более с индексом и кешем.

много. Вот и думай. Как надумаешь - реализовывай. И тогда уже можешь что-то рассказать. А твои фантазии просто смешны.

Я как нибудь, без посторонней помощи решу, о чём мне думать, когда реализовывать (и реализовывать-ли вообще) и когда и о чём рассказывать/говорить. И «смеётся тот, кто смеётся последним».

в Windows у меня появилось графическое окружение, и возможность тыкать мышкой. Это важно.

  • в linux добавлен cgroups — это важно.
  • в linux добавлен kvm, а затем и xen — это важно.

Из недавнего:

  • в linux добавлена поддержка использования файлов подкачки через NFS — это важно.
  • в linux реализован механизм гибридного засыпания — это важно.
  • в linux реализовано ещё Over9000 фич — это важно.

Т.е. когда когда речь заходит о фичах, которые возможно тебе нафиг не сдались, то твой потолочный калькулятор тебе не кажет про 99% и 1%? А когда надо обосрать идею, твой потолочный калькулятор стабильно чешет о эфемерных отношениях и ты ему доверяешь чуть менее чем полностью? Это двойные стандарты.

Ну а что даёт твой подход - я так и не понял.

Да нет, по моему ты понял, но не желаешь признать это. Дух противоречия и привычки — сильная штука.

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

почему «бессмыслено», и почему невозможно отследить?

Потому-что — во-вторых из второго пункта, а во-первых, чуть менее чем все, современные пм игнорируют существование друг-друга, а так же существование методов установки по в систему мимо пм.

зачем вести базу установленного, если установленное может само являть базу, по которой достаточно иметь индекс;

потому-что твоей 1NF СУБД недостаточно. Если ты хочешь удалить программу X, то тебе надо что-то сделать с программами, от которых зависит X, и что-то сделать с программами которые зависят от X.

Зависимости описываются в пакете, пакет развертывается в систему, зависимости ложатся файлом в каталог с id пакета. В чём недостаточность - неясно. В слаке (как и во многих других дистрибутивах) бд лежит сбоку, разрушение этой бд превращает установленную систему в тыкву, до тех пор пока ты вновь не накатишь все пакеты, не забыв ничего.

Потому - ставь слаку, и РЕАЛИЗУЙ свою идею, слака готова к этому.

GNU/Linux вообще по большей части готов к самым разным идеям. Насчёт реализуй - посыпаю голову пеплом, но объективная реальность такова, что я пока не нахожу возможности заняться этим.

xattr на манер «тегировать всё» - не спасает, т.к. вероятна процедура «перетегировать всё», читай лопатить кучу объектов на запись;

а тебя ничего не спасёт в этой ситуации. rpm --rebuilddb над твоей гипотетической СУБД будет выполняться не меньше года. Так-то.

Над бд, и выполняться он будет считанные секунды, а на ssd так вообще миллисекунды.

я не счёл их «ничтожными», я счёл их ненужными.

Ок, ты счёл их ненужными. Можешь взять пряник.

Ибо всё это везде реализовано. Причём реализовано лучше, чем у тебя.

У меня не реализовано. На данный момент сравнивается идея.

мне удобнее, что программа сохраняет своё имя, даже когда меняется. По твоему, субъективному мнению, применяемые решения идейно лучше. Можешь взять ещё пряник.

А разве я предлагал от этого отказаться?

да. потому-что по твоему у меня поставилась-бы вторая e2fsprog.

Не поставится, это уже надуманно тобой. Ясень пень - программа должна обновляться. А как будет выглядеть это обновление - поставить рядом и переписать симлинк или запилить в тот же id - вполне может зависить от какого нибудь флага/правила.

Ты предлагаешь автоматизировать повторную установку

Да и не только (о shell я сказал).

а при обновлении ручками удалять старую программу, и переводить стрелки на новую.

Нет, это надуманно тобой.

Не нужно.

Не нужно тебе. Возьми ещё пряник.

Только демагоги и ГСМ множат 1*1000000 и радуются,

Ну так и не уподобляйся им. А подумай о коллективе(ах) программистов, например, их продуктивности и оплате труда. То что я экстраполировал ещё не значит, что «часто» не имеет место быть.

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

В твоей, единоличной, слаке всё ещё средневековье - замечательно! А причём тут другие? В эволюционировавших дистрибутивах флешки монтируются на более унифицированный манер - /run/media/username/<UUID или аналог или LABEL>/ - и это мелочь, но она удобна, особенно когда единоличное отодвигается на второй план.

чем удобна-то? У другого юзера какие-то другие дырки для флешек?

и да, TFLY это метка такая.

Т.е. когда когда речь заходит о фичах, которые возможно тебе нафиг не сдались, то твой потолочный калькулятор тебе не кажет про 99% и 1%? А когда надо обосрать идею, твой потолочный калькулятор стабильно чешет о эфемерных отношениях и ты ему доверяешь чуть менее чем полностью? Это двойные стандарты.

нет механизм гибридного засыпания мне не мешает. Я про него от тебя узнал впервые. Но если ты таки завернёшь все мои файлы в каталоги с именами /frjrheuijhuihu43433434nfm fremk/ я ОЧЕНЬ расстроюсь. Хорошо, что Патрег не одобрит.

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

В твоей, единоличной, слаке всё ещё средневековье - замечательно! А причём тут другие? В эволюционировавших дистрибутивах флешки монтируются на более унифицированный манер - /run/media/username/<UUID или аналог или LABEL>/ - и это мелочь, но она удобна, особенно когда единоличное отодвигается на второй план.

ERROR ERROR ОБНАРУЖЕНА АНОМАЛИЯ ERROR ПРОРЫВ ИММУНИТЕТА К ДЕБИЛАМ

Чувак, выкинь свою красивую среду окружения GNOME/KDE/*DE, сядь в консоль и попробуй один раз набрать свой /run/media/username/fjs3yroiwehfoiy83 хотя бы даже с автокомплитом. Если вопросы ещё остались, то выпрыгни в окно. С десятого этажа. Пожалуйста.

Oreolek
()
Ответ на: комментарий от drBatty

чем удобна-то? У другого юзера какие-то другие дырки для флешек?

А вот! Но ты же понимаешь, что label и uuid удобны.

и да, TFLY это метка такая.

КЭП?

Но если ты таки завернёшь все мои файлы в каталоги с именами /frjrheuijhuihu43433434nfm fremk/ я ОЧЕНЬ расстроюсь. Хорошо, что Патрег не одобрит.

Передавай приветы.

rnz
()
Ответ на: комментарий от Oreolek

выкинь свою красивую среду окружения GNOME/KDE/*DE,

Не пользуюсь ни одним, оpenbox меня более чем устраивает.

сядь в консоль и попробуй один раз набрать свой /run/media/username/fjs3yroiwehfoiy83 хотя бы даже с автокомплитом.

обычно так и делаю, из хистори:

cp ulib_osg28x.tar.bz2 /run/media/rnz/4EDA-5003/

Если вопросы ещё остались, то выпрыгни в окно. С десятого этажа. Пожалуйста.

Решу - надо оно мне или нет, только после твоего полёта к твердыням асфальта с обозначенной высоты. Начинай первым. Пожалуйста.

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

Ну конечно, откуда мне... Только вот на моей памяти и в быту, и в сми, и на bbs'ках было предостаточно срача на манер твоих же «зачем?» в адрес как оболочки(чек) к dos, так и в адрес уже более поздней win95...

слышал значит? А какая оболочка в итоге победила знаешь? Windows 95. А знаешь почему? А всё просто: я например поставил Win95, потому как только под Win95 работал DukeNukem. Все остальные - по той же самой причине. Причём оболочек было много, а разных OS было ещё больше. В _все_ они были несовместимы друг с другом, и с MS-DOS. Потому и сдохли все 99%. В живых остались лишь очень немногие, и очень уж специфические «оболочки», по типу Slackware Linux, которая тоже в MS-DOS когда-то ставилась... Такое вот исключение, которое очевидно только подтверждает правило - несовместимые оболочки НЕ НУЖНЫ. Твоя НЁХ тоже не нужна, по той же причине. Даже если она в 9001 раз лучше.

Так то.

Т.е. ты как-бы не понял, что ведёшь себя как маркетолог, правда не из ferrari, говоря про проценты пользователей, а по сути вещая за всех?

ОК. Т.е. ты желаешь сделать такую систему, которая нужна 3.5 избранных? Похвально, если ты это признаешь. Спешу тебя расстроить - это достаточно ДОРОГО, делать НЁХ для избранных. Этих самых избранных нужно сначала как-то убедить, что им нужна именно твоя НЁХ, а как ты это будешь делать - неясно. Хотя это уже другой вопрос, может быть ты Стив Джобс. И может ты когда-нибудь тоже выпустишь телефон, который (благодаря твоим id) будет ни с чем не совместим, кроме как с твоим нетбуком и десктопом. Дерзай, удачи...

Однако, разработчики (использующие результаты труда других разработчиков) значит пусть познают дзен и кунг-фу с набором prefix и скоростным запиливанием ebuild'ов и конфигов?

ты до сих пор не знаешь, что /usr/local является ваще-то префиксом ПО УМОЛЧАНИЮ? Кунгфу придётся познать твоим юзерам, запиливающим твои префиксы, которые невозможно ни набрать, ни запомнить. Кстати, как создать префикс для программы, которой ещё нет? И как об этом префиксе узнает автодополнение?

сам включи логику, я это сказал о value.

на данный момент value это программа, а key это её имя. Тебе не нравится, что ты не можешь поставить 2+ программы с одним key-именем. Так? А с твим подходом, key-имя может быть не уникальным. Правильно? Так вот это - смешно. Ибо:

это мало кому надо, и нужно очень редко. Большинству юзеров в большинстве ситуаций это не только не нужно, но и вредно. Ты придумал автомобиль, у которого очень просто, без всяких усилий, и без каких-то инструментов-костылей, отсоединяется руль. Даже ребёнок может просто взять, и уеб^Wоторвать руль. Теперь убеждаешь всех, что это хорошо, круто, и сильно облегчит жизнь всем автослесарям, им теперь не нужно будет таскать с собой наборы ключей, ибо руль очень просто отделить. А то, что ездить на такой машине будет очень сложно, если вообще возможно - тебя не волнует. Это для тебя - мелочь. Хрень не нужная.

Так вот: машина нужна что-бы ездить, и рулить при этом. А система нужна для работы. И для того, что-бы ставить/удалять/обновлять ПО. Это ОСНОВНАЯ задача. Всё остальное - не важно. Если надо оторвать руль, нужны гаечные ключи. Руль НЕ должен просто так вот отваливаться. Смирись.

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

+100500

Задолбаешься в этот /run/media/username/ переходить, а потом еще гадать, какой из «fasiueryoui1345lk» — нужная флешка. То ли дело — зашел в /media, а там: vfat-sdf1, ntfs-sdg1, reiserfs-sdh1 и т.п.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от rnz

Потому-что — во-вторых из второго пункта, а во-первых, чуть менее чем все, современные пм игнорируют существование друг-друга

4.2

Контрпримеры: sbopkg & installpkg, rpm & urpmi, padt-get & aptitude & dpkg

чуть менее чем все, современные пм игнорируют <skip> существование методов установки по в систему мимо пм.

а кассирша в магазине игнорирует вынос товара мимо кассы. Привет, Кэп!

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

Та хрен их знает: спроси у толстотролля rnz

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Так что, какой же он, на хрен, гений?

Непризнанный.

Kindly_Cat
()
Ответ на: комментарий от rnz

Кеширование отменили?

не. Во все поля. Уже приучили юзера к тому, что «легковестное» DE с браузером жрёт пару-тройку гигов сразу после запуска. А что тут такого? Ты что, нищеброд гиг купить? Что, 600 рублей мама не даст? Действительно, зачем погромистам думать, что-то там изучать?

Зависимости описываются в пакете, пакет развертывается в систему, зависимости ложатся файлом в каталог с id пакета. В чём недостаточность - неясно. В слаке (как и во многих других дистрибутивах) бд лежит сбоку, разрушение этой бд превращает установленную систему в тыкву, до тех пор пока ты вновь не накатишь все пакеты, не забыв ничего.

ваще-то ты просто не в курсе, как оно в слаке. Ничего, я могу рассказать: Если в слаке удалить ВСЮ БД тамошнего ПМа, то не произойдёт НИЧЕГО. Как работало, так и будет работать. Очевидно, что кроме ПМа, эта база никому не нужна. Если завтра одмин решит поставить программу юзая make install - он её поставит. И она будет работать. Если этот одмин не забыл про make uninstall, то она даже удалится, ЧСХ - корректно. Если забыл - ССЗБ. Как обычно. Если ВНЕЗАПНО будет найдена дыра, и Патрег сделает заплату, и одмин решит её поставить, то заплата ессно не поставится, ибо программы «нету». Если одмин не полный идиот, он просто поставит заплату, и всё будет хорошо. Причём тут «тыква» - решительно непонятно. И непонятно, каким таким образом /var/log/package уничтожилось, а вот /usr/ и прочее не пострадало? Твой ПМ защищает от таких рисков? Отлично. А если структура /usr/id была нарушена? В этой ситуации работа будет полностью парализована. Видишь оно как? Для того, что-бы грохнуть слаку, необходимо _одновременно_ порушить БД и сами программы (ибо если какая-то беда с ПО, и даже 95% их испорчена, то с помощью БД и ПМа программы легко восстановить. И наоборот(наоборот даже ещё проще - восстанавливать ничего не нужно).

Таким образом, твоё изобретение ещё и сильно снижает живучесть системы в целом.

Над бд, и выполняться он будет считанные секунды, а на ssd так вообще миллисекунды.

да-да. Создатели RPM тоже так говорили. Не сомневаюсь. Но получилось то, что получилось.

Не поставится, это уже надуманно тобой. Ясень пень - программа должна обновляться. А как будет выглядеть это обновление - поставить рядом и переписать симлинк или запилить в тот же id - вполне может зависить от какого нибудь флага/правила.

а флаг/правило ручками ставить? или либацтрал почитаем? Т.е. перед обновлением я должен буду прочитать список, и пометить галочкой то, что надо обновлять, чтоб второй раз не поставила? А при вторичной установке эти галочки снимать? Оригинально... Конечно, галочки - сильно. Но не проще-ли запилить гуй, которые делает префиксы? И никаких id не нужно...

Да и не только (о shell я сказал).

значит я не понял. Что, акромя повторной установки даёт твоя идея?

а при обновлении ручками удалять старую программу, и переводить стрелки на новую.

Нет, это надуманно тобой.

а, они сами переведутся? Оригинально. Только пока твоя идея не реализуема, смирись. Либастрал ещё не доделан, потому твоему гипотетическому ПМу неоткуда будет узнать, вторая это программа с тем же именем, или обновление?

Не нужно тебе.

всем не нужна машина, руль которой постоянно отваливается. Даже автослесарю. Во всяком случае, ездить он на такой не станет.

Ну так и не уподобляйся им. А подумай о коллективе(ах) программистов, например, их продуктивности и оплате труда. То что я экстраполировал ещё не значит, что «часто» не имеет место быть.

а я не хочу думать о быдлокодерах, которые делают быдлосистемы, не для себя, а для быдла. И делают их так, что-бы их было удобно *делать*. Потому-что вопрос использования их не волнует, быдло всё схавает. Так?

Вот только «программистами» их не нужно называть.

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

А вот! Но ты же понимаешь, что label и uuid удобны.

label удобно. а вот твой UUID прибитый гвоздями к твоему DE - неудобен. FDD уже когда-то прибили гвоздями к DE, и теперь, через 20 лет, мы можем наслаждаться картинкой с этим самым FDD. Не уподобляйся.

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

обычно так и делаю, из хистори: cp ulib_osg28x.tar.bz2 /run/media/rnz/4EDA-5003/

ах... вот почему бегинеры так ненавидят консоль! Конечно, cp /media/TFLY/* . им просто не дано... Такие дела...

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

Смотри, сейчас пОциент обидится, да накатает портянку еще больше предыдущих ☺

вобщем-то дискас завершён. Изобретатель так и не смог ответить на основные вопросы, коих в общем-то два:

1. почему, тот факт, что квадратные колёса его велосипеда более удобнее для хранения, чем обычные ламповые, круглые, перевешивает тот факт, что на круглых удобнее ездить? Почему юзеры велосипедов должны мучится, облегчая работу отдела логистики велосипедного завода?

2. Отсутствие руля безусловно экономит сталь и хром в масштабах Этой Страны, но для конечного юзера руль таки иногда нужен. Может есть смысл его оставить?

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

UUID прибитый гвоздями к твоему DE

Ты ничего не путаешь? UUID же — характеристика самого раздела, как и LABEL (только читается хреновее).

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Ты ничего не путаешь? UUID же — характеристика самого раздела, как и LABEL (только читается хреновее).

я про НЁХ по имени «/run/media/rnz/4EDA-5003/»

А против UUID который выдаёт # tune2fs -l /dev/sda2|grep 'UUID' я ничего не имею.

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

DukeNukem... специфические «оболочки»...

Duke nukem 1/2/3d - был разработан и запускался под dos, если ты не знал(и похоже не знаешь), что такое dos extender, то скорее это ты что-то там «слышал», а у меня duke nukem 3d отлично бегал под dos с dos4gw. Установка слаки из под dos, ни разу не характеризует первую как «специфичная „оболочка“» для второй. Т.е. твой вывод о «ненужности» отталкивается от ложных утверждений. Мало того! Ты пытаешься быть вангой.

ОК. Т.е. ты желаешь сделать такую систему, которая нужна

КЭП? Здесь ты мог-бы и остановиться, потому-что дальше твоё личное трололо опять орудует потолочный калькулятором и ложными утверждениями.

Дерзай, удачи...

Спасибо и на этом.

ты до сих пор не знаешь, что /usr/local является ваще-то префиксом ПО УМОЛЧАНИЮ?

Объясни своему личному трололо, что уже десять раз было сказано (в разных формах) - одну программу, одной версии, без рукоблудия два и более раз оно не поставит. А так же объясни ему, что «ПО УМОЛЧАНИЮ» не все соблюдают, что тоже порождает бесполезное рукоблудие.

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

Не придётся. <Имя пакета>_версия_<порядковый номер (да-да, тот самый который плюсуется к id - составной ключ на базе не уникального programname и порядкового номера)> или краткий desc(если задан и уникален).

И как об этом префиксе узнает автодополнение?

Ранее сказано, читай ответы адресованные к invy.

на данный момент value это программа, а key это её имя. Тебе не нравится, что ты не можешь поставить 2+ программы с одним key-именем. Так? А с твим подходом, key-имя может быть не уникальным.

О составном ключе читай выше.

это мало кому надо, и нужно очень редко. Большинству юзеров в большинстве ситуаций это не только не нужно, но и вредно

Выброси свой калькулятор, он побуждает тебя говорить за всех. Это плохо, очень плохо.

Про машины и рули: Из Москвы в СПб и обратно одни предпочитают/вынуждены ездить на машине, а другие на сапсане, без руля.

Про uuid/label и удобства: В строке /run/media/username/<UUID или аналог или LABEL>/, твой персональный троллоло, сконцентрировал внимание на username - тогда как это всего-лишь вопрос предпочтений, но ситуации когда это надо есть (как например и ситуации, когда надо монтировать swap по NFS), смотри хотя-бы в сторону LTSP. Но! Твоё трололо проигнорировало <UUID или аналог или LABEL>. Лично мне до лампочки, есть у флешек label'ы или нет, я просто втыкаю флешки и они монтирутся с идентификатором, который позволяет их однозначно определить и в консоли и файловом менеджере. И мне удобно. Конечно-же когда мне надо форматнуть персональную флешку, то на её разделы я втыкаю метки, да и это не всегда.

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

Duke nukem 1/2/3d - был разработан и запускался под dos

ты не понял что-ли? хорошо, прочти медленно: я установил Win95 потому, что в этой Win95 работал duke. Понятно? Это называется - совместимость. Причём 100%я, ибо Win95 фактически и была DOS'ом. №7 ЕМНИП.

Установка слаки из под dos, ни разу не характеризует первую как «специфичная „оболочка“» для второй. Т.е. твой вывод о «ненужности» отталкивается от ложных утверждений. Мало того! Ты пытаешься быть вангой.

это не мой вывод - в итоге победила самая совместимая оболочка MS-DOS, а именно, созданная самой мысы Win9x. А _всё_ остальное сдохло. Либо переродилось настолько, что к MS-DOS не имеет никакого отношения. И тем не менее, когда-то давно была такая штука как ZIPSLACK, которая не только ставилась, но и _работала_ в MS-DOS: http://jack.kiev.ua/docs/slackbook/zipslack-booting.html

Объясни своему личному трололо, что уже десять раз было сказано (в разных формах) - одну программу, одной версии, без рукоблудия два и более раз оно не поставит. А так же объясни ему, что «ПО УМОЛЧАНИЮ» не все соблюдают, что тоже порождает бесполезное рукоблудие.

Во первых, второй раз программа будет поставлена, даже если в первый раз её поставили через ПМ. Во вторых, можно подумать, что кто-то кроме тебя(и то не факт), будет соблюдать твой id да ещё и по умолчанию. Скорее всего, всем будет пофиг, и все так далее и будут всё пихать в /usr/local. А знаешь почему? А всё просто - нет таких программеров, которые пишут каждый раз новые скрипты для autoconf, есть старый. И там написано PREFIX=/usr/local. Такие дела.

Не придётся. <Имя пакета>_версия_<порядковый номер (да-да, тот самый который плюсуется к id - составной ключ на базе не уникального programname и порядкового номера)> или краткий desc(если задан и уникален).

ага.Ты только забыл архитектуру. Если так сделать, получится это: http://mirror.yandex.ru/slackware/slackware-14.0/slackware/a/

О составном ключе читай выше.

а зачем мне вторая слака? у меня уже есть.

Про машины и рули: Из Москвы в СПб и обратно одни предпочитают/вынуждены ездить на машине, а другие на сапсане, без руля.

давай поговорим о вафлях. Почему о вафлях? А почему о сапсанах без руля? Не говори ерунды - ежу понятно, что если руль отваливается, то это всегда и для всех плохо. Даже если и есть ситуации, в которых кому-то именно это и надо. И если твой калькулятор при умножении чего-то нарушает пропорцию - выкидывай его на помойку. Пропорция от размера не зависит. Если твои квадратные колёса не нужны никому, то они не нужны никому. Хоть 100 человек, хоть 100000 спроси. Из 100000 ты разве что найдёшь таких же мечтателей как ты, которые всё равно сделать ничего не в состоянии.

Про uuid/label и удобства: В строке /run/media/username/<UUID или аналог или LABEL>/, твой персональный троллоло, сконцентрировал внимание на username - тогда как это всего-лишь вопрос предпочтений, но ситуации когда это надо есть (как например и ситуации, когда надо монтировать swap по NFS)

а почему в этой строке нет номера порта, который просто необходим тем, которые монтируют своп по sshfs? Я уж вообще молчу про вопиющие отсутствие девичей фамилии матери!!! (я хрен знаю, кому это надо, но можно же помечтать?)

Кстати, сама идея монтировать своп по NFS - это пять! мусье знает толк в извращениях!

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

Про кеширование и быстродействие:
Ты всё ещё считаешь, что 640кб хватает для всего? Вроде нет, ты же даже тормозной win95 поставил на свои 8мб рам'ы, что-бы добавить тормозов в dukenukem3d? Так или иначе кеширование уже реализовано в ОС и глупо им не воспользоваться, что касается поиска needle с индексом - ниАчём.

О тыкве:
Ясно же что слака от закоррупченной бд пакетов не перестанет фунционировать, зачем утрировать и КЭП'ничать? Речь о контроле (что к чему относится) - что-бы восстановить контроль, надо накатить обратно, и надо помнить, что надо накатить. Закоррупченная бд сбоку (с исправной fs) - не такое уж редкое явление, спроси у rpm'щиков.
Я рад, что в слаке тебе не доводилось с этим встречаться.
Закоррупченная бд в предлагаемой схеме - закоррупченная fs, что так же встречается (и думаю по чаще чем фейлы бд сбоку), но информация о установленном пакете вполне может быть избыточной, потому-что:

  • id в каждом уровне базовой иерархии (помним, что некоторые уровни базовой иерархии могут быть представлены другими разделам - персональные /, /usr, /var, /home).
  • в каждом id/ вполне может лежать одинаковый файл описания (и с контрольной суммой тоже).

Т.о. предлагаемая схема обладает, вероятно, большей живучестью, чем существующая.

Да и не только (о shell я сказал).

значит я не понял. Что, акромя повторной установки даёт твоя идея?

Уж сколько раз сказал, а тебе всё равно надо потроллить. Ладно повторю:

  • возможность идентифицировать части программы, через programname, без необходимости вписывать полные пути, рисовать 100500 алиасов и дёргать тулзы;
  • возможность удобнее, точнее и быстрее контролировать установленное по;
  • как ты уже видать осознал, «живучесть системы в целом» не снижается, а повышается;

Примерчик того, как это могло-бы выглядеть:

mkdir mysql-5.1:var/newdb
chown mysql:mysqladmins mysql-5.1:var/newdb
mysql-5.1:bin/installdb mysql-5.1:var/newdb
mysql-5.1:bin/startdaemon
mysql -Smysql-5.1:run/socket newdb
or
mysql-client-5.1:bin/mysql -Smysql-5.1:run/socket newdb

Про флаг/правило:
Галочки - в paranoid mode вполне могут быть.
Галочки при вторичной установке - в paranoid mode да снимать, так ведь paranoid mode.
В normal mode - всё установленное впервые - default, соответственно и обновления пишутся в default.
В предлагаемой схеме, может существовать group mode или named слот для группы пакетов, что как-бы более логично, чем слоты по пакету из той-же gentoo (и я знаю что есть virtual/packet).
Обновление вторичных пакетов, должно выполняться по полному имени пакета (имя-версия-номер) или по desc, имени группы, или по id.

а, они сами переведутся?

Про составной ключ, ты уже прочитал. Про остальное написано выше.

Про быдлокодеров: no comments...

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

s/(и я знаю что есть virtual/packet)/(и я знаю что есть virtual/packet и set)

rnz
()
Ответ на: комментарий от drBatty

ты не понял что-ли? хорошо, прочти медленно: я установил Win95 потому, что в этой Win95 работал duke. Понятно? Это называется - совместимость. Причём 100%я, ибо Win95 фактически и была DOS'ом. №7 ЕМНИП.

Да, я не понял. Можешь без «было» и ЕМНИП - так и есть. Кому как, а я оболочкой считаю norton/vc. И win95 строго говоря не является оболочкой, может быть надстройкой. Про ZIPSLACK не слышал и не пользовался, но насколько я понял из описания, тоже не является оболочкой.

О совместимости:
Ты, проводя параллели, пытаешься быть Вангой. Однако пока, на мой взгляд, совместимость не страдает.

а зачем мне вторая слака? у меня уже есть.

Искренне рад за тебя. Вторую слаку я тебе не предлагаю.

Про машины, рули, сапсаны: На мой взгляд, ты применил неудачную метафору, я предложил более простую и понятную, на мой взгляд. В остальном мало логики и много эмоций.

Кстати, сама идея монтировать своп по NFS - это пять! мусье знает толк в извращениях!

Такие извращения нужны, когда требуется окупать затраты и продавать, пример: облачный хостер, под клиентские vm отданы sas-полки, под swap в клиентских vm отданы sata-полки, что-то отдаётся по ipoib, а что-то по nfs.

rnz
()
Ответ на: комментарий от drBatty

Про uuid/label и удобства: В строке /run/media/username/<UUID или аналог или LABEL>/, твой персональный троллоло, сконцентрировал внимание на username - тогда как это всего-лишь вопрос предпочтений, но ситуации когда это надо есть (как например и ситуации, когда надо монтировать swap по NFS)

а почему в этой строке нет номера порта, который просто необходим тем, которые монтируют своп по sshfs? Я уж вообще молчу про вопиющие отсутствие девичей фамилии матери!!! (я хрен знаю, кому это надо, но можно же помечтать?)

Не барагозь. Есть ситуация, когда за один комп садятся, в разный период времени, разные люди, при этом одни usb-порты системника выведены на стол, а другие в ящик стола. В ящике стола воткнуты и смонтированы флешки одного пользователя, который в «logout», а на столе втыкает флешки другой пользователь.

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

Ты всё ещё считаешь, что 640кб хватает для всего?

нет. не считаю. Однако считаю, что бездумная растрата ресурсов юзера - один из основных признаков быдлокодера. Т.е. если погромист делает какой-то дополнительный, и не нужный индекс, в надежде, что его кто-то там закеширует - он быдлокодер.

Ясно же что слака от закоррупченной бд пакетов не перестанет фунционировать, зачем утрировать и КЭП'ничать? Речь о контроле (что к чему относится) - что-бы восстановить контроль, надо накатить обратно, и надо помнить, что надо накатить. Закоррупченная бд сбоку (с исправной fs) - не такое уж редкое явление, спроси у rpm'щиков.

почему меня должны волновать rpmпроблемы? У меня их нет. Опять уходишь в сторону? Если уж начал про «бд сбоку в слаке», так и говори про слаку с ЕЁ бд. RPM это отдельная песня. Что касается твоей БД, то ты ещё не доказал, что она будет устойчива, мало того, ребёнку понятно, что если с твоей БД хоть что-то случится, то можно будет смело становиться героем. Что до rpmпроблем, то у них есть rpm --rebuilddb, в слаке тоже можно написать аналогичный костыль, если такой юзкейс хоть кому-то нужен(т.е. восстановление БД), погугли, может найдёшь, хотя вряд-ли, ибо подобный костыль ИМХО не нужен. И не надо про калькулятор, если 3.5 юзерам слаки это надо, то один из них с лёгкостью сделает нужный костыль. А если костыля такого нет, то стало быть он действительно никому НЕ НУЖЕН.

А вот тебе стоит задуматься об rebuilddb к своему ПМу. Твоя идея выеденного яйца не стоит, и является ненужной фантазией, если ты не придумал к ней необходимый набор костылей и напильников. Не забывай, что кроме таблицы индекс->файлы, тебе ещё необходимо лечить таблицу индекс->имя_программы, связанную с первой.

Я рад, что в слаке тебе не доводилось с этим встречаться.

бывало. Как-то сдох HDD с /var. И вместе с этой базой. Т.ч. я прекрасно знаю, о чём говорю, у меня не фантазии (как у тебя), а вполне реальные жизненные ситуации.

Т.о. предлагаемая схема обладает, вероятно, большей живучестью, чем существующая.

да нифига. В любой из ПМов встроена проверка ЭЦП, и ничто не мешает сделать её не только на уровне пакетов, но и на уровне файлов. Ну кроме ненужности. Ты не понимаешь очень простой вещи: IRL проще и быстрее накатить систему по новой, чем проверять какие-то контрольные суммы. Посему все эти твои возможности вводить контрольные суммы мало того, что не нужны, дык ещё и существуют и так у всех.

А живучесть у тебя таки ниже, ибо сбой базы которая сбоку - проблема только базы. А сбой базы, которая внутри - равносильна краху системы. И никакие костыли в виде КС(ЭЦП) этого не меняют. Так то.

возможность идентифицировать части программы, через programname, без необходимости вписывать полные пути, рисовать 100500 алиасов и дёргать тулзы;

мне вот интересно: как можно быть таким упоротым? Разве сложно открыть глазки, и посмотреть, К ЧЕМУ это приведёт? Разве нет у нас системы, где каждая программа лежит в своей уютной папке? Есть. СамиЗнаетнКакЕёЗовут. Но употреблять здесь её Имя - нельзя. Однако можно посмотреть, к чему это привело:

  • самый обычный юзкейс - пересадить юзера с одного места на другое. С таким подходом этот юзкейс усложняется до полной и тотальной невозможности - нужно прошерстить ВСЕ папки с программами, выдрать оттуда ВСЕ файлы, к которым приложил руку данный юзер, и переместить их (только эти файлы) в целевую систему. Тут возникает сразу множество проблем:
    • это долго. И это не автоматизировано(причины ниже), потому этим надо заниматься ручками. Что ещё дольше.
    • проблема в том, что нет никакой возможности отследить изменения ЭТОГО конкретного юзера в папке с программой - к одному и тому же файлу может притрагиваться более одного юзера, потому нам следует как-то подписать не только каждый файл, а каждую строчку в этом файле. Фактически, мы должны в каждую папку засунуть DVCS по типу гита или hg, что-бы отслеживать изменения. Впрочем есть путь проще: в _каждой_ из Over9000 папок с ПО мы делаем ещё подпапки user1, user2 и т.д. Понятно, почему такого не сделано...
    • также возникает проблема, связанная с тем, что на целевой машине нету нужной папки с ПО. Что делать? Ставить? А что потом? Выходит, нам надо как-то подписывать ещё и ПО. Ну и проблема, что ПО есть в цели, но нет в исходной системе. Настройки останутся, но старого юзера. Что обычно не радует ни того, ни другого. А это обычное дело, если например в цели есть Safari, а в исходной системе FireFox. В итоге настройки будут потеряны, и даже подменены на чужие.
  • вроде как в твоей (и маздайной) схеме упрощается другой юзкейс - можно выдрать программу целиком, и имплантировать её в другую систему. Простым копированием нужной папки. В теории так оно и есть. На практике epic fail: см. прошлый пункт со списком проблем. Та я не спорю! Конечно это не проблемы, ибо их можно и нужно решить! И они давно и успешно таки решены (правда не полностью). Существуют костыли, что-бы не париться: например реестр, в котором сохранены все настройки. Реестр представляет собой СУБД, которая позволяет индексировать содержимое как по ПО, так и по юзверям. В теории. Есть и другие костыли, например многие настройки можно хранить не в папке с ПО, а в папке юзера, прям как в Linux. Все эти костыли помогают решить прошлый пункт, и ВНЕЗАПНО делают невозможным этот - by design мы могли-бы скопировать папку с ПО, но что делать с костылями??
  • Избыточный функционал. Программа независима, и анально огорожена в своей уютной папочке. На первый взгляд - красиво. На второй - а она видит, что там рядом? Неа! К чему это неизбежно приводит? Правильно! К тому, что каждая программа исповедует принцип - всё своё ношу с собой! Что и привело к засилию монстров-комбайнов. Почему так? Да очевидно же! Ну откуда Nero знает, есть-ли в системе программа, которая считает md5? Хрен его знает. Значит нужно свою md5 тянуть. Вообще ВСЁ своё.

И да, ты можешь забить. Типа - мопед не мой. Вот только идея-то потому и смешна, что всем очевидно, что изобрёл ты велосипед. Да ещё и с квадратными колёсами.

возможность удобнее, точнее и быстрее контролировать установленное по;

ну выше я расписал, к чему это привело IRL. ИЧСХ, в мысы это понимают не хуже меня. Только сделать ничего не могут. А всё почему? А всё просто: если у тебя один ПК, один юзер, и этот юзер _работает_ с одной задачей (музыка в фоне не в счёт), то вполне логично засунуть каждую программу в свою папку. И я с тобой тут полностью согласен. IRL не всё так просто - у кого-то два юзера, у кого-то две задачи, а у кого-то два компьютера. В любом случае, данная схема превращается в тупое и глючное РЕШЕТО, как его костылями не обвешивай (см. Windows)

Есть только один принцип, который поможет разгрести этот бардак - разделяй и властвуй. Система _обязана_ поделить файлы в соответствии с их назначением: конфиги должны лежать в одном каталоге, юзерские файлы - в другом, программы в третьем, библиотеки в четвёртом, временные в пятом, и т.д. Причём каждый файл должен быть подписан именем юзера, который является его хозяином. Вот тогда, и только тогда будет порядок. Но в твоей схеме так не получится, или ты не только /usr/id хочешь сделать, но и /var/id, /tmp/id, /id/, /home/user666/id /udsr/id22/lib/id17/etc/? Не? Ну а где хранить программе свой конфиг? Разве не в /etc/id/?

как ты уже видать осознал, «живучесть системы в целом» не снижается, а повышается;

нет. Это ты себя обманул. И пытаешься меня обмануть. На самом деле, живучесть понижается, и это очевидно. Кстати, если-бы у меня в Win диск /var рухнул, то мне-бы пришлось её переставлять, ибо никакого /var/ там нет, а есть только C:. И не только венду пришлось-бы переставить, а ВСЕ программы.

Примерчик того, как это могло-бы выглядеть:

это ты кому написал?

Про составной ключ, ты уже прочитал. Про остальное написано выше.

ну я понял - ручками надо включить группу, включить paranoid/default ещё что-то... Мне таки проще префиксы.

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

Да, я не понял. Можешь без «было» и ЕМНИП - так и есть. Кому как, а я оболочкой считаю norton/vc. И win95 строго говоря не является оболочкой, может быть надстройкой. Про ZIPSLACK не слышал и не пользовался, но насколько я понял из описания, тоже не является оболочкой.

именно «былА», ибо сейчас венда настолько-же далека от MS-DOS, насколько любой Linux - в коробке есть более-менее рабочий эмулятор типа dosbox. И всё.

А я под словом «оболочка» имел ввиду всё, что работало под дос, и тем не менее обеспечивало НЕ DOS среду. И NC, и Win95 и даже ZIPSLACK. И победила, как всем известно, именно такая блжд №95.

О совместимости: Ты, проводя параллели, пытаешься быть Вангой. Однако пока, на мой взгляд, совместимость не страдает.

не. я не вангую. Что-ты?! Это же очевидно! Всякие NC & ZIPSLACK вымерли как класс, а венда - цветёт и пахнет. А всё потому, что только венда совместима на уровне FS сама с собою и даже досом (там до сих пор структура как в ДОСе, несмотря на все костыли. Даже FDD A: и те остались)

я предложил более простую и понятную

твоя метафора надумана, и не имеет отношения к предмету спора. Будь она хоть в 100 раз понятнее. Хотя бы потому, что сапсаны есть IRL, а твоя НЁХ есть только в твоей голове, да и то наполовину.

Такие извращения нужны

я не говорил, что они не нужны. Однако костыль подпирающий другой костыль является слабым основанием для третьего костыля.

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

Не барагозь. Есть ситуация, когда за один комп садятся, в разный период времени, разные люди, при этом одни usb-порты системника выведены на стол, а другие в ящик стола. В ящике стола воткнуты и смонтированы флешки одного пользователя, который в «logout», а на столе втыкает флешки другой пользователь.

а, значит из-за 3.5 юзеров, ВСЕМ надо делать /run/media/username? Вот теперь и обоснуй, почему ради других 3.5 юзеров НЕ надо делать /run/media/username/port/? Вторые 3.5 юзера лысые что-ли?

Кстати, ты ещё не обосновал нужность /run. Куда побежал-то? Обосновывай и эту лишнюю сущность, рассказывай, каким 3.5 юзерам надо /run? Тем, которые

облачный хостер, под клиентские vm отданы sas-полки, под swap в клиентских vm отданы sata-полки, что-то отдаётся по ipoib, а что-то по nfs.

и всё это облыко на LiveCD? Я же говорю - месье знает толк...

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

Искренне рад за тебя. Вторую слаку я тебе не предлагаю.

а у тебя всего два пути:

  1. WindowsWay, мы разделяем сущности «программы», т.е. by design мы получаем возможность удобно и просто пользоваться _программами_. Например просто их устанавливать, тупо распаковывая в папку. И просто удалять, тупо эту папку удаляя. Также, by design, придётся придумать костыли, дабы управлять файлами. Придётся предусмотреть
    1. ярлык-костыль для запуска ПО
    2. папку-костыль, ибо для хранения файлов возможностей каталога ФС недостаточно. У тебя тоже такой костыль есть, ввиде второй бд имя->папка
    3. реестр костыль, для хранения конфигов системы и ПО
  2. UNIX Way - разделяем сущности «файлы» по их назначению. Тут костылей почти не надо, кроме одного - Пакетного Менеджера.

Ты выбираешь первый путь. И это - смешно. Ибо делаешь вторую венду. Особенно просто и смешно это сделать из слаки. Из генты не получится - не осилишь. А из слаки можно. Дерзай...

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

Однако считаю, что бездумная растрата ресурсов юзера - один из основных признаков быдлокодера. Т.е. если погромист делает какой-то дополнительный, и не нужный индекс, в надежде, что его кто-то там закеширует - он быдлокодер.

  • ресурсы не юзера, а эвм;
  • не растрата, а использование;
  • не бездумное, а с расчётом;
  • индекс нужен, потому-что препроцессинг - читай, o(n) не на каждом шаге, а только на интервалах установки/удаления, на каждом шаге время O(l+p), где l - длина паттерна, p - вхождения), и индекс кешировать не обязательно, но неплохо-бы;
  • не оптимизируй на этапе прототипирования, а тем более на стадии идеи.

почему меня должны волновать rpmпроблемы? У меня их нет. Опять уходишь в сторону?

Хз, вероятно они не должны тебя волновать, но тебе же нравится говорить за всех. И в сторону разговор не я, а ты уводишь, причём постоянно.

Если уж начал про «бд сбоку в слаке», так и говори про слаку с ЕЁ бд.

  • вырываешь из контекста и выдаёшь за цитату, моя формулировка была следующей - в слаке (как и во многих других дистрибутивах) бд лежит сбоку - контекст даже явно приведён в скобках;
  • и не я начал про бд в слаке.

Что касается твоей БД, то ты ещё не доказал, что она будет устойчива, мало того, ребёнку понятно, что если с твоей БД хоть что-то случится, то можно будет смело становиться героем.

Всё-таки она стала таки бд, а не субд — прогресс, о надёжности ниже.

Про rpm --rebuilddb и костыли в слаке:

А вот тебе стоит задуматься об rebuilddb к своему Пму.

В кач-ве несущей основы выступает fs, а нарушение структуры fs выходит за рамки обсуждаемого.
Что касается примитивных нарушений в файловой структуре (удалили /var), то достаточно переустановить повреждённую(ые) программу(ы) - если в базовой иерахии есть хотя-бы одно вхождение id (с описанием, по которому можно определить programname и/или контрольными суммами), то достаточно просто расставить недостающие части программы на свои места.

Не забывай, что кроме таблицы индекс->файлы, тебе ещё необходимо лечить таблицу индекс->имя_программы, связанную с первой.

1. Ты хотел сказать таблица id/файлы - ответ выше
2. Ты хотел таблица id->имя программы - уже говорил ранее, проитись по базовой иерархии и пересоздать таблицу, а пересоздать индекс по таблице — ниАчём.

Как-то сдох HDD с /var. И вместе с этой базой. Т.ч. я прекрасно знаю, о чём говорю, у меня не фантазии (как у тебя), а вполне реальные жизненные ситуации.

Могу заверить, я тоже не из тех, кто говорит о не реальных жизненных ситуациях.

да нифига. В любой из ПМов встроена проверка ЭЦП, и ничто не мешает сделать её не только на уровне пакетов, но и на уровне файлов. Ну кроме ненужности.

Как показано выше — фига. И в современных пм, после установки пакета эцп не нужна, потому-что хранится в бд сбоку, кроме того на уровне пакетов есть разделение, а на уровне установленных пакетов разделение «расплывается».

Ты не понимаешь очень простой вещи: IRL проще и быстрее накатить систему по новой, чем проверять какие-то контрольные суммы. Посему все эти твои возможности вводить контрольные суммы мало того, что не нужны, дык ещё и существуют и так у всех.

Скорее это ты не понимаешь — IRL прежде чем воспользоваться привычкой windows-пользователя и накатить всё по новой, надо сыграть в игру «тут-помню, там не помню».

А живучесть у тебя таки ниже, ибо сбой базы которая сбоку - проблема только базы. А сбой базы, которая внутри - равносильна краху системы. И никакие костыли в виде КС(ЭЦП) этого не меняют. Так то.

Выше показано, что живучесть выше, т.к. есть избыточность.
И не равносильно, а равно, т.к. крах бд = краху fs, а значит краху системы.

мне вот интересно: как можно быть таким упоротым? Разве сложно открыть глазки, и посмотреть

Ты это сам себе сказал?

К ЧЕМУ это приведёт? Разве нет у нас системы, где каждая программа лежит в своей уютной папке? Есть. СамиЗнаетнКакЕёЗовут. Но употреблять здесь её Имя - нельзя. Однако можно посмотреть, к чему это привело

Неа. Не верно понял и не верные выводы делаешь. Посмотрим приведённые тобой юзкейсы:

самый обычный юзкейс - пересадить юзера с одного места на другое.

Берёшь таблицу id-программа со старой машины, копируешь/(объединяешь, если требуется) её на новую, копируешь /home/user, ставишь софт по таблице id-программа (да-да от обратного), копируешь(объединяешь, если требуется) /var, копируешь(объединяешь, если требуется) /etc. Profit!

вроде как в твоей (-skip-) схеме упрощается другой юзкейс - можно выдрать программу целиком, и имплантировать её в другую систему. Простым копированием нужной папки.

Да, можно. И без костылей.
Cкопировать и пересоздать таблицу id-программа и индекс по ней.

Избыточный функционал. Программа независима, и анально огорожена в своей уютной папочке. На первый взгляд - красиво. На второй - а она видит, что там рядом? -skip-

Почему это вдруг она должна перестать видеть и таскать всё с собой? programname-version, зависимости в пакете, default, group named slot и зеркала реп, по моему, закрывают данный вопрос. Нафига по кругу ходить?

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

Я его и предлагаю.

-skip- Причём каждый файл должен быть подписан именем юзера, который является его хозяином. Вот тогда, и только тогда будет порядок.

Система разделения прав доступа уже имеется на уровне fs.

Но в твоей схеме так не получится, или ты не только /usr/id хочешь сделать, но и /var/id, /tmp/id

Т.е. ты только осознал? :facepalm:

/id/, /udsr/id22/lib/id17/etc/? Не?

Не.

Ну а где хранить программе свой конфиг? Разве не в /etc/id/?

Да, /etc/id/, /home/user/.config/id/

нет. Это ты себя обманул. И пытаешься меня обмануть.

Я ни себя, ни кого-то ещё не пытаюсь обмануть. И как оказалось - тебе нифига не очевидно, потому-что ты, даже толком не разобравшись в том, что изначально написано в статье, начал «лечить»! :doublefacepalm:

Примерчик того, как это могло-бы выглядеть:

это ты кому написал?

Как выяснилось - тебе, ибо ты до сих пор не понял.

ну я понял - ручками надо включить группу, включить paranoid/default ещё что-то... Мне таки проще префиксы.

А ещё для тебя «проще» - не забыть сделать ручками LD_PRELOAD и/или /etc/ld.so.d/programname_lib_in_usrlocal.conf,

mkdir /var/{lib,run,tmp}/programname-N
chmod -R 755 /var/{lib,run,tmp}/programname-N
find /var/{lib,run,tmp}/programname-N -type f -exec chmod 640 '{}' \;
chown user:group /var/{lib,run,tmp}/programname-N
, где N - версия или другой неведомый идентификатор, вплоть до ${pwgen -n 255 -1}.

rnz
()
Ответ на: комментарий от drBatty

Для меня «былА» станет тогда, когда её невозможно будет качнуть, а потому пока есть, ну да это не важно. Как понимать «оболочка» - дело твоё, не претендую. Что и как в винде - я знаю. ИМХО nc- переродился в виде far, totalcmd, mc и т.п. А по аналогии с zipslack пашет ubuntu с wubi, разве-что стартует не из винды. И на это тоже забить.

не. я не вангую. Что-ты?!

Вангуешь, вангуешь, проводишь параллели и вангуешь по поводу того, как оно будет если я или кто-то другой всё же реализует предлагаемую схему.

твоя метафора надумана, и не имеет отношения к предмету спора. Будь она хоть в 100 раз понятнее.

Нет. Это как раз твои метафоры с отстёгивающимися рулями высосаны из пальца и не имеют отношения к делу.

Хотя бы потому, что сапсаны есть IRL, а твоя НЁХ есть только в твоей голове, да и то наполовину.

Раскрой для себя термин «метафора», чуть более чем полностью.

Задача:
установить программу
=====
поехать из пункт А в пункт Б.

Ручной труд:
вбить prefix, создать каталоги, назначить права, подгрузить либы
=====
преодолеть путь в авто, руля, педаля, сверяясь с дорожными знаками и картой

Автоматизация:
выбрать пакет, нажать ввод, дождаться уведомления о завершении
=====
сесть в поезд, слушая музыку, дремать до уведомления о прибытии

я не говорил, что они не нужны. Однако костыль подпирающий другой костыль является слабым основанием для третьего костыля.

Без однако, т.к. IRL - нет бабла, надо сделать на том что есть, что-бы было бабло.

rnz
()
Ответ на: комментарий от drBatty

а, значит из-за 3.5 юзеров, ВСЕМ надо делать /run/media/username? Вот теперь и обоснуй, почему ради других 3.5 юзеров НЕ надо делать /run/media/username/port/? Вторые 3.5 юзера лысые что-ли?

Опять говоришь за всех!
Рассматривая мой пример IRL относительно uuid, ты сделал акцент на несущественном и продолжаешь делать. Суть вопроса была: если у тебя монтируется по метке, то почему у других(читай, у меня и у кого-либо ещё) должно быть так же. А о твоём средневековье было сказано - замечательно (читай, это твоё личное дело)!
Иначе говоря:
мой вопрос к тебе носит контекст - почему у других должно быть как у тебя?
твой вопрос ко мне носит контекст - почему у всех не как у тебя?
Чувствуешь разницу?

Твоё желание поставить меня в тупик, забавляет, но это полезно. Чем-то ты смахиваешь на антагонистов из фильма «Чокнутые»(1991), правда у них мотивация была - сохранить своё бабло...

и всё это облыко на LiveCD? Я же говорю - месье знает толк...

Почти, образы грузятся по pxe, сервера без накопителей, подключены полки.

rnz
()
Ответ на: комментарий от drBatty

1. Я не вижу в предложенной схеме путь венды, это тебе он мерещится, попробуй абстрагироваться от неё. Я вижу вероятный/возможный путь эволюции GNU/Linux.
2. Как-бы ты не старался утрировать, само понятие «программный пакет» (program package) изначально определяет принадлежность файлов. И абсолютно по барабану развёрнут пакет в систему или нет, так или иначе файлы пакета идентифицируются изначально определённой принадлежностью к пакету. И похоже ты это задним умом понимаешь, возможно потому ты и споришь ища рациональную основу, которую мог-бы разглядеть если-бы внимательнее отнёсся к статье, а не повёлся на топикстартеровский стёб, хотя возможно я и сам виноват - слабо расписал идею, стараясь избегать «многабукав», вот и заминусовали (нашлись же говнюки, которые не поленились в хабракарму насрать).

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

Мне думается не проще. Over9000 каталогов не просят кушать (читай лишних ручных действий).

зато займут over9000 inod'ов.

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

зато займут over9000 inod'ов.

Это да. Но в допустимых пределах, ведь не логи нагруженного билинга. Если в базовой иерархии 10 каталогов, а каждый установленый пакет будет держать по 10 файлов/каталогов в каждом каталоге базовой иерархии, то потребуется не менее чем N*10^2 inodes, где N кол-во установленных пакетов, т.е. на 1500 будет расход не менее 150000 inodes. Для сравнения у меня в gentoo:

find /{usr,etc,lib,lib32,bin,sbin,opt,root}/ | wc -l
731113

find /{usr,etc,lib}/ | wc -l
717434

find /usr/ | wc -l
696257

find /usr/portage/ | wc -l
156949

df -h | grep '^/dev/'
/dev/sda5        20G   15G  4.0G  79% /

df -i
Filesystem       Inodes      IUsed      IFree IUse% Mounted on
rootfs          1310720     731564     579156   56% /
Это без distfiles, без home, без var - которые смонтированы отдельно.

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

ресурсы не юзера, а эвм;

хорошо. не твои ресурсы, а твоего папы, который выложил денег за твою эвм.

не растрата, а использование;

бездумное использование есть растрата

индекс нужен, потому-что препроцессинг - читай, o(n) не на каждом шаге, а только на интервалах установки/удаления, на каждом шаге время O(l+p), где l - длина паттерна, p - вхождения), и индекс кешировать не обязательно, но неплохо-бы;

не оптимизируй на этапе прототипирования, а тем более на стадии идеи.

даже на этапе идеи видно, что твой индекс - костыль. Он мешает, и непонятно что с ним делать. Во многих системах использовать простой текстовый файл не получится, понадобится тащить какую-то СУБД или делать свою, а во многих эта твоя СУБД не нужна.

Всё-таки она стала таки бд, а не субд — прогресс

БД всегда была БД, а не СУБД. А СУБД в слаке - это instalpkg/removepkg, а в rpm-based - rpm. Это только ты смешал в одну кучу и БД и СУБД, внутрь ФС. Везде (кроме венды) так НЕ делают, а делают БД как ты говоришь «сбоку» от программ, в частности и от СУБД.

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

2. Ты хотел таблица id->имя программы - уже говорил ранее, проитись по базовой иерархии и пересоздать таблицу, а пересоздать индекс по таблице — ниАчём.

ну и чем это лучше rpm --rebuilddb?

Могу заверить, я тоже не из тех, кто говорит о не реальных жизненных ситуациях.

в таком случае - сначала сделай свою НЁХ, и тогда будем говорить о жизненных ситуациях.

Как показано выше — фига. И в современных пм, после установки пакета эцп не нужна, потому-что хранится в бд сбоку, кроме того на уровне пакетов есть разделение, а на уровне установленных пакетов разделение «расплывается».

выше ничего такого НЕ показано. И не важно, где ты будешь хранить свою ЭЦП - хочешь сбоку - храни сбоку. Можешь и в файлах. В любом случае ты её можешь проверить, и городить для этого id не нужно.

Я ни себя, ни кого-то ещё не пытаюсь обмануть. И как оказалось - тебе нифига не очевидно, потому-что ты, даже толком не разобравшись в том, что изначально написано в статье, начал «лечить»! :doublefacepalm:

конечно мне нифига не очевидно, потому как описание обрывочное и не полное. Да ещё и разбросано по 9000 постов.

Почему это вдруг она должна перестать видеть и таскать всё с собой? programname-version, зависимости в пакете, default, group named slot и зеркала реп, по моему, закрывают данный вопрос.

конечно, все эти костыли закрывают данный вопрос. И делают невозможным юзать твои id как id, без костылей к костылям. Понадобился костыль «индекс id->name»? И не забудь про костыль к костылю «индекс», который будет пересобирать этот индекс. Ну и что это даёт в итоге? Windows+реестр+твикалку реестра.

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

Угомони своё трололо.

бездумное использование есть растрата

Как видно, оно всё же не бездумное, а с расчётом. Если у тебя индекс = костыль, то выкини его из своей fs и посмотри, что будет.

СУБД в слаке - это instalpkg/removepkg, а в rpm-based - rpm. Это только ты смешал в одну кучу и БД и СУБД, внутрь ФС. Везде (кроме венды) так НЕ делают, а делают БД как ты говоришь «сбоку» от программ, в частности и от СУБД.

Я не смешал СУБД с ФС.
Я предлагаю поверх ФС накатить унифицированную схему БД, для размещения программ по контролируемой схеме. Функции СУБД(хрен с ним пусть примитивный набор функций к key-value хранилищу зовётся СУБД, раз уж ты не можешь без спуска к реляционным основам) я предлагаю запить в ОС в виде api-функций (не обязательно в ядре, достаточно на уровне системной либы), пользовательским интерфейсом к этим api-функциям я предлагаю запилить новый, любой или все существующие rpm/yum/emerge/pacman/и т.п, т.е. мне без разницы как именно будет реализован интерфейс пользователя. И об этом сказано в статье, если не читать её по диагонали, а просто подумать над прочитанным.

rnz
()
Ответ на: комментарий от drBatty

ну и чем это лучше rpm --rebuilddb?

Проход по id сильно меньше по объёму операций чтения, чем проход по всем файлам.

в таком случае - сначала сделай свою НЁХ, и тогда будем говорить о жизненных ситуациях.

Ну пока мы говорим о RL которую неплохо-бы улучшить.

выше ничего такого НЕ показано.

ой-ли?

И не важно, где ты будешь хранить свою ЭЦП - хочешь сбоку - храни сбоку. Можешь и в файлах.

Ну я это и сказал. В предлагаемой схеме предпочтительно хранить там же, в id - т.к. бд.

В любом случае ты её можешь проверить, и городить для этого id не нужно.

А я и не предлагаю ради эцп делать id.

конечно мне нифига не очевидно, потому как описание обрывочное и не полное. Да ещё и разбросано по 9000 постов.

Не использовал-бы диагональное чтению статей, тогда-бы и в форуме было меньше разъяснительных бесед.

конечно, все эти костыли закрывают данный вопрос.

:facepalm: Ты табло с расписанием и перон на вокзале, тоже называешь костылями? Тебе больше нравится обегать все поезда на путях выискивая номер поезда с билета и карабкаться с сумками по лестнице? И ты мне говоришь о извращениях?

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

т.е. мне без разницы как именно будет реализован интерфейс пользователя.

Конечно лукавлю, разница есть, но это не принципиально.

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

Как видно, оно всё же не бездумное, а с расчётом. Если у тебя индекс = костыль, то выкини его из своей fs и посмотри, что будет.

индекс в виде plain-text я давно выкинул вместе с FAT'ом. Брат жив.

Я не смешал СУБД с ФС.

смешал - если у тебя есть индекс-id, то ты просишь свою ФС этот индекс искать. Т.е. у тебя ФС работает как СУБД. Это было-бы возможно и неплохо, если-бы не ещё одна СУБД в виде индекс->имя, которую ты ещё даже не решил как делать («да хоть просто текст!»). Итого, у тебя две СУБД, одна в ФС типа как в венде, вторая сбоку, как у всех, и ты меня пытаешься убедить, что это удобнее и надёжнее.

Я предлагаю поверх ФС накатить унифицированную схему БД, для размещения программ по контролируемой схеме. Функции СУБД(хрен с ним пусть примитивный набор функций к key-value хранилищу зовётся СУБД, раз уж ты не можешь без спуска к реляционным основам)

где-то записано, что СУБД обязательно должна быть реляционной? Нет, не должна. Хотя у тебя таки получилась реляционная 1NF. Две таблицы связанные уникальным индексом. Впрочем, возможно и 2NF, потому-что я(и ты) не совсем понимаем, как будет реализована вторая таблица.

я предлагаю запить в ОС в виде api-функций (не обязательно в ядре, достаточно на уровне системной либы), пользовательским интерфейсом к этим api-функциям я предлагаю запилить новый, любой или все существующие rpm/yum/emerge/pacman/и т.п, т.е. мне без разницы как именно будет реализован интерфейс пользователя. И об этом сказано в статье, если не читать её по диагонали, а просто подумать над прочитанным.

ну запили этот API. мне что-то надоело спорить - я уже вижу, в чём у тебя будут проблемы. Ты как маленький ребёнок, пытающийся построить заведомо невыполнимую НЁХ. У него не получается, и он плачет. Но он-то хоть пытается, в отличие от тебя, ибо ты свою НЁХ только нарисовал, а строить пусть кто-то другой будет.

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

Проход по id сильно меньше по объёму операций чтения, чем проход по всем файлам.

да, конечно - восстановление одной таблицы сильно проще восстановления двух. Никто не спорит. Только непонятно, с чего ты взял, что надо восстанавливать именно вторую таблицу, и только её? Только потому, что в её качестве выступает ФС? Но вторая таблица - тоже файл(ы), а значит сломаться может с той же вероятностью, что и первая. Даже меньше, там 1 или несколько файлов, в отличие от твоих id.

Ты табло с расписанием и перон на вокзале, тоже называешь костылями? Тебе больше нравится обегать все поезда на путях выискивая номер поезда с билета и карабкаться с сумками по лестнице? И ты мне говоришь о извращениях?

извращением мне видится построение своего вокзала каждому поезду. Со своим локальным расписанием. И ещё с главным вокзальным управлением, в котором мне скажут, на какой именно из Over9000 вокзалов мне пройти на нужный поезд. И никуда не нужно карабкаться, приехал на вокзал, дождался единственного паровоза, и поехал. Очень всё красиво и уютно.

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

индекс в виде plain-text я давно выкинул вместе с FAT'ом. Брат жив.

Тебе осталость inode выкинуть и тогда ты погрузишься в нивану без «костылей».

смешал...

Нет. Это матрёшка, а не мешанина, один уровень вложен в другой. Что до таблицы индекс->имя, ну подумай, роль её - не терять human-readable представление идентификатора программы. Конечно без неё можно обходиться, но это будет неудобно конечному пользователю, как было-бы неудобно, выброси dn в связке ip <-> dn. Можно сделать как в nix - вписать в качестве идентификатора id-name, но это плохой путь, как если-бы имя ресурса в интернет идентифировалось бы ip-dn.

Итого, у тебя две СУБД, одна в ФС типа как в венде, вторая сбоку, как у всех, и ты меня пытаешься убедить, что это удобнее и надёжнее.

Ок, тебе нравится называть субд, называй. Но это не типа как в винде. В винде: shared libs складываются в один каталог реестр - обладает слишком сложной структурой реестр - не перестроить на базе установленного Убедить не пытаюсь, я возражаю на твои утверждения с которыми я несогласен.

где-то записано, что СУБД обязательно должна быть реляционной?

Теперь ты делаешь акцент на том, что несущественно - указанно в скобках и по поводу чего я счёл возможным принять твою точку зрения. И чё тебе неймётся, я не понимаю.

ну запили этот API

Как только, так сразу. «нарисовал, а строить пусть кто-то другой будет», а это плохой сценарий? Есть значительно более талантливые программисты чем я.

rnz
()
Ответ на: комментарий от drBatty

да, конечно - восстановление одной таблицы сильно проще восстановления двух. Никто не спорит. Только непонятно, с чего ты взял, что надо восстанавливать именно вторую таблицу, и только её? Только потому, что в её качестве выступает ФС? Но вторая таблица - тоже файл(ы), а значит сломаться может с той же вероятностью, что и первая. Даже меньше, там 1 или несколько файлов, в отличие от твоих id.

Что-то в твоём тексте вторая и первая перепутались. О восстанавливлении на fs ранее сказал - с примитивными повреждения решает избыточность, более серьёзные повреждения - уровень fs, он не обсуждается (для fs уже есть журналирование и средства восстановления). О повреждений таблицы id-имя, тоже сказал - перестроить по установленному.

извращением мне видится построение своего вокзала каждому поезду. Со своим локальным расписанием. И ещё с главным вокзальным управлением, в котором мне скажут, на какой именно из Over9000 вокзалов мне пройти на нужный поезд. И никуда не нужно карабкаться, приехал на вокзал, дождался единственного паровоза, и поехал. Очень всё красиво и уютно.

Опять тебя не в ту степь заносится с метафорами - сам надумаешь невесть что и сам же начинаешь гнобить. Лучше подумай о путях, стрелках и диспетчерской - легче будет понять.

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

Нет. Это матрёшка, а не мешанина, один уровень вложен в другой.

с т.з. сложности и надёжности, нет никакой разницы, разобраны твои матрёшки, или собраны. Их всё равно N штук, и для доступа к любой надо O(N) действий.

Что до таблицы индекс->имя, ну подумай, роль её - не терять human-readable представление идентификатора программы.

не только. ПО будет искать компоненты и общие либы тоже по ней, а не по id, который непонятно как делается. libastral по id не найти.

Конечно без неё можно обходиться

нельзя.

как было-бы неудобно, выброси dn в связке ip <-> dn

100% сайтов перестали-бы работать, либо работали не правильно. Не все ссылки ведут в докрут, а те, что не ведут, ведут не по IP. IP вообще нужен только здесь и сейчас. В отличие от domain.

Ок, тебе нравится называть субд, называй. Но это не типа как в винде. В винде: shared libs складываются в один каталог реестр - обладает слишком сложной структурой реестр - не перестроить на базе установленного Убедить не пытаюсь, я возражаю на твои утверждения с которыми я несогласен.

я вижу, что ты не билл (:

Не так, как в венде. Но очень похоже. В венде (точнее в MS-DOS), _хотели_ сделать так, но - не получилось. И не получилось как раз из-за нагромождения костылей.

Как только, так сразу. «нарисовал, а строить пусть кто-то другой будет», а это плохой сценарий? Есть значительно более талантливые программисты чем я.

э... Проблема в том, что ты нарисовал НЁХ, которая работать НЕ будет. Я пытаюсь объяснить - почему. Для меня это вполне очевидно. Если ты считаешь, что я не прав, попробуй реализуй, и столкнёшься именно с этими проблемами.

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

Что-то в твоём тексте вторая и первая перепутались. О восстанавливлении на fs ранее сказал - с примитивными повреждения решает избыточность, более серьёзные повреждения - уровень fs, он не обсуждается (для fs уже есть журналирование и средства восстановления). О повреждений таблицы id-имя, тоже сказал - перестроить по установленному.

а где ещё хранится инфа о том, что ksjkweriijwfewio это programm, и jrnureuivndfk тоже programm, только второй вариант?

Опять тебя не в ту степь заносится с метафорами - сам надумаешь невесть что и сам же начинаешь гнобить. Лучше подумай о путях, стрелках и диспетчерской - легче будет понять.

не легче.

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

с т.з. сложности и надёжности, нет никакой разницы, разобраны твои матрёшки, или собраны. Их всё равно N штук, и для доступа к любой надо O(N) действий.

К чему это вообще? В мешанине отсутствует структура, об этом речь, а не о том сколько O(n) в матрёшке.

Что до таблицы индекс->имя, ну подумай, роль её - не терять human-readable представление идентификатора программы.

не только. ПО будет искать компоненты и общие либы тоже по ней, а не по id, который непонятно как делается. libastral по id не найти.

Не libastral, информация о программе может существовать в id/, поэтому без таблицы id-имя можно обойтись, но это будет неудобно и очень медленно.

100% сайтов перестали-бы работать, либо работали не правильно. Не все ссылки ведут в докрут, а те, что не ведут, ведут не по IP. IP вообще нужен только здесь и сейчас. В отличие от domain.

Однако адресовать по ip можно, но это неудобно.

Не так, как в венде. Но очень похоже.

С такой точки зрения unix и windows похожи. Это всё равно что сказать, что лендровер похож на жука - и то и то имеет 4 колеса и ездит, но там где проедет первый, не проедет второй.

э... Проблема в том, что ты нарисовал НЁХ, которая работать НЕ будет. Я пытаюсь объяснить - почему. Для меня это вполне очевидно. Если ты считаешь, что я не прав, попробуй реализуй, и столкнёшься именно с этими проблемами.

Другими словами у тебя «аргументы» закончились. Ок твоя точка зрения принята, осмыслена и я её не разделяю. Спасибо за диалог. Жаль лишь, что ты начал его говнометательства.

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

К чему это вообще? В мешанине отсутствует структура, об этом речь, а не о том сколько O(n) в матрёшке.

структуру можно найти где угодно, хотя-бы в помойном бачке - тяжёлые помои тонут, лёгкие всплывают. Однако, что-бы достать что-то конкретное из помойного бачка, тебе придётся переворошить в среднем пол-бака. И если бак вдвое больше, копать вдвое дольше. О чём и речь. Если короче - O(N).

Не libastral, информация о программе может существовать в id/, поэтому без таблицы id-имя можно обойтись, но это будет неудобно и очень медленно.

Однако адресовать по ip можно, но это неудобно.

что тебе мешает прямо сейчас записать эту информацию в xattr, и не парится со своими id? Можешь ещё и таблицу сбоку сделать...

Однако адресовать по ip можно, но это неудобно.

это не только «неудобно», но и невозможно, ибо IP таки меняется.

С такой точки зрения unix и windows похожи. Это всё равно что сказать, что лендровер похож на жука - и то и то имеет 4 колеса и ездит, но там где проедет первый, не проедет второй.

речь не о жуках. Речь о том, что в твоей схеме лишний уровень абстракции, твой id. Такая ерунда в Windows, но там она для совместимости с MS-DOS, и на примере Windows ты видишь, что несмотря на то, что каждая программа в своей папке, это профитов НЕ даёт. Костыли не пускают. И ты предлагаешь добавить в Linux этот уровень, но разве не очевидно, что в Linux это тоже не даст профита, как и в венде?

Другими словами у тебя «аргументы» закончились.

ну в принципе - да. Велосипед с квадратными колёсами не взлетит. Мало того, в отличие от велосипедов, у нас уже есть маздай. Который постоянно падает, как его не подбрасывай. Ну нет крыльев, и квадратные колёса летать помогают не сильно...

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

структуру можно найти где угодно

Чё мелочиться, давай вообще на атомарный уровень спустимся. :facepalm: Я предлагаю не мешанину, а структуру и точка.

что тебе мешает прямо сейчас записать эту информацию в xattr, и не парится со своими id? Можешь ещё и таблицу сбоку сделать...

Уже сказал, ранее можно, но есть операция «перетегировать всё» и второй момент нет вложенности - т.е. допустим id в xattr и база сбоку, если по каким-то причинам на файле нет id в xattr, то опять-таки нет возможности определить принадлежность файла к пакету.

Речь о том, что в твоей схеме лишний уровень абстракции, твой id.

У меня он не лишний.

Такая ерунда в Windows, но там она для совместимости с MS-DOS

Не совместимости ради в windows появился program files. В dos был бардак, а то, что кто-то стремился ручками упорядочить, создавай каталоги для каждой программы в попытке обуздать бардак - говорит о том, что хотелось удобства.(о чём уже столько сказано). Появление же program files - попытка m$ пойти на встречу тем, кто хотел удобства. Как оно получилось у m$ уже вторично. И в целом профиты в этом есть, вкупе со всем остальным, иначе бы m$ не «цвела и пахла». А подходы схожи лишь в стремлении пойти в сторону удобства.

ну в принципе - да.

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

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

Уже сказал, ранее можно, но есть операция «перетегировать всё

это id->file => id->name?

Что мешает это сделать, если id у тебя внутри файлов? Там ведь у тебя лежит и файлик с name? Отлично. Назови его id, и возможно сложи эти файлы в отдельный каталог ids/

и второй момент нет вложенности - т.е. допустим id в xattr и база сбоку, если по каким-то причинам на файле нет id в xattr, то опять-таки нет возможности определить принадлежность файла к пакету.

у тебя тоже нет никакой возможности определить, id, если программа „по каким-то причинам“ лежит в /usr/bin/, а не в id/

И да, у меня вот есть каталог /usr/bin/svn-tools, это id или нет?

У меня он не лишний.

а что он даёт кроме сложностей?

Упрощает _одну_ чрезвычайно редкую операцию, и усложняет _все_ остальные? По квадратным ступеньками шириной N см. Удобно ехать на специальных квадратных колёсах, и ты теперь будешь рассказывать мне, что надо _всем_ на таких ездить?

Не совместимости ради в windows появился program files. В dos был бардак, а то, что кто-то стремился ручками упорядочить, создавай каталоги для каждой программы в попытке обуздать бардак - говорит о том, что хотелось удобства.(о чём уже столько сказано). Появление же program files - попытка m$ пойти на встречу тем, кто хотел удобства.

ну это не попытка, это вполне очевидное действие.

Как оно получилось у m$ уже вторично. И в целом профиты в этом есть, вкупе со всем остальным, иначе бы m$ не „цвела и пахла“. А подходы схожи лишь в стремлении пойти в сторону удобства.

нет, не вторично. Такой подход возможен, тогда, и только тогда, когда работает за компом root, и только он _один_. Кроме того, этот root может запускать одновременно только _одну_ программу и работать с ней (допускается прослушивание музыки в фоне, или какие-то длительные рассчёты тоже в фоне).

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

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

Это не задача программиста.

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

А если программист может работать свою программу исключительно только в своём говнодистре - такой программист не нужен. Как и его быдлокод.

Вот правильно, Убунта не нужна.

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

Уже давно не.

Вылазь из криокамеры.

я это прекрасно знаю, и пытаюсь объяснить человеку, что затолкать все файлы в его уютный id НЕ получится. По той же причине, почему не получилось в оффтопике. И посему профита тоже не будет.

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

как можно узнать сущность несуществующего?

Философско-теологические беседы на ЛОРе.

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

Например патч Брамина вычищает идиотов, которые запускают всякую НЁХ под рутом.

К сожалению, только лишь файлы на компах идиотов, а не самих идиотов...

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

К сожалению, только лишь файлы на компах идиотов, а не самих идиотов...

самих идиотов вычищают «радостные» владельцы серверов, на которых идиоты запускают патч (ибо в их венде он не работает)

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

каким 3.5 юзерам надо /run?

/run — это такой /var, который нужен до того, как смонтирован /var. Что тебе не ясно?

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

Рассматривая мой пример IRL относительно uuid, ты сделал акцент на несущественном и продолжаешь делать.

Сказал человек, постоянно пользующийся этим приёмом. Ок.

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

/run — это такой /var, который нужен до того, как смонтирован /var. Что тебе не ясно?

мне не ясно, как там оказалась флешка, воткнутая через неделю после того, как был смонтирован /var?

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

Этот «костылик» позволяет любой программе его поддерживающей подсунуть любые пути в качестве конфигов (.config) и дополнительных данных (.local). Собственно, этот «костылик» надо было ввести сразу же в систему вместе с «костыликом» PATH, а не через 30 лет.

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

Этот «костылик» позволяет любой программе его поддерживающей подсунуть любые пути в качестве конфигов (.config) и дополнительных данных (.local). Собственно, этот «костылик» надо было ввести сразу же в систему вместе с «костыликом» PATH, а не через 30 лет.

с этим трудно спорить...

drBatty ★★
()
24 ноября 2012 г.
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.