LINUX.ORG.RU
ФорумTalks

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

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


2

1

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

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

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

★★★
Ответ на: комментарий от 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 ★★
()
Ответ на: комментарий от LongLiveUbuntu

Например я могу поставить себе gcc 4.5 и 4.6

Я тебе больше скажу, в слаке 14 из 2012го года до сих пор есть tar-1.13 1999го года выпуска.

Брат жив.

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 ★★
()
Ответ на: комментарий от 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
()
Ответ на: комментарий от LongLiveUbuntu

это не слоты, это пакеты с разными именами. а держать так gimp2.6 и gimp2.8 одновременно не получится

thunar ★★★★★
()
Ответ на: комментарий от 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 ★★★★★
()
Ответ на: комментарий от const86

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

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

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

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

drBatty ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.