Делаем правильные мемы о наложении патча Бармина.
Если человек хочет показать свою крутость (или же охуительное чувство юмора), то часто советует пользователю наложить патч Бармина на свою систему. Иными словами - удалить все системные файлы. Но мозга для того, чтобы написать правильную команду им явно не хватает. Что ж, давайте это исправим.
Часто советуют команду
А со второй командой куда интереснее. Многие говорят, что без "волшебного ключика"
См. вывод
Простейшая программа на C++ покажет вам:
Программа
Следовательно, для удаления файлов системы мы можем указывать следующие команды:
1.
#Tips #Bash
Если человек хочет показать свою крутость (или же охуительное чувство юмора), то часто советует пользователю наложить патч Бармина на свою систему. Иными словами - удалить все системные файлы. Но мозга для того, чтобы написать правильную команду им явно не хватает. Что ж, давайте это исправим.
Часто советуют команду
rm -rf или rm -rf /. Первая команда явно неправильна - ей не переданы аргументы кроме ключей -rf, которые предназначены для удаления директорий. А имя самОй директории-то не предоставлено - что тогда нужно удалить?А со второй командой куда интереснее. Многие говорят, что без "волшебного ключика"
--no-preserve-root ничего не будет работать. А вот нет. Поэтому думаю, что стоит описать поведение символа * в UNIX Shell.См. вывод
echo * в BASH или другой оболочке.Простейшая программа на C++ покажет вам:
#include <iostream>Использование:
int main(int argc, char** argv) {
for(int i=1; i <= argc, i++) {
std::cout << argv[i] << std::endl;
}
}
./program *Вывод в консоль:
.ICEauthorityТ.е. будет выведено содержимое текущей рабочей директории. Если мы изменим команду до следующей:
.Xauthority
.android
.bash_history
.bash_logout
.bash_profile
.bashrc
.cache
.cargo
Видео
Документы
Загрузки
Изображения
Музыка
...
./program /*То вывод будет следующим:
/binЭто связано с тем, что оболочка (shell) вместо символа
/boot
/dev
/etc
/home
...
* программе передаёт список всех файлов либо текущей рабочей директории, либо указанной.Программа
rm (по крайней мере из состава GNU Coreutils) не будет удалять файлы в корне, если в качестве аргумента передать путь /. А если мы передадим аргумент /*, то оболочка заменит его на список всех найденных в корне файлов и rm это с удовольствием скушает. Если rm запущена от имени обычного пользователя, то ничего страшного не произойдёт - системные файлы удалены не будут, поскольку у rm в данном случае к ним нет доступа, но будут удалены файлы пользователя. Ну а если вы запустили rm -rf /* от имени пользователя root, то тут могу принести вам соболезнования.Следовательно, для удаления файлов системы мы можем указывать следующие команды:
1.
rm -rf / --no-preserve-root
2. rm -rf /*
Какой вариант использовать - решайте сами. Но ответственность за все ваши файлы несёте вы сами :)#Tips #Bash
👍5🥰3
Сегодня исполняется 70 лет Ричарду Столлману — основателю Фонда свободного ПО, проекта GNU и Лиги за свободу программирования. Внёс большой вклад как в развитие современных свободных ОС (GNU/Linux как пример), так и в развитие свободного ПО в целом. Одной из его заслуг является также создание свободной лицензии GNU GPL, предоставляющую пользователям свободу копировать, модифицировать и распространять (в том числе на коммерческой основе) ПО.
Мы поздравляем его с юбилеем. Желаем сил и возможностей и для дальнейшей работы в GNU и FSF. За свободным ПО будущее!
Мы поздравляем его с юбилеем. Желаем сил и возможностей и для дальнейшей работы в GNU и FSF. За свободным ПО будущее!
🎉7❤6👍2
#Humor
———————————————
На основном ноуте стоит такая 15,6" матрица. Не матрица, а говно. Хотя в качестве печатной машинки использовать вполне возможно — а что ещё надо? Сам ноут 2013 года выпуска, поэтому ему простительно.
———————————————
На основном ноуте стоит такая 15,6" матрица. Не матрица, а говно. Хотя в качестве печатной машинки использовать вполне возможно — а что ещё надо? Сам ноут 2013 года выпуска, поэтому ему простительно.
👍1
С другой стороны, не каждый ноут может похвастаться углом раскрытия в 180 градусов, ни тогда, ни сейчас. Считай, ультрабук теперь
😁3
https://github.com/nate-xyz/resonance
Вот такой вот моднявый музыкальный плеер для GNOME. Что-то среднее между GNOME Music и Amberol.
Вот такой вот моднявый музыкальный плеер для GNOME. Что-то среднее между GNOME Music и Amberol.
🔥3
https://opennet.ru/59003/
По этому поводу можно уйти в адский запой под наркозом пытки садизм
По этому поводу можно уйти в адский запой под наркозом пытки садизм
www.opennet.ru
Завершено портирование GIMP на GTK3
Разработчики графического редактора GIMP объявили об успешном выполнении задач, связанных с переводом кодовой базы на использование библиотеки GTK3 вместо GTK2, а также задействованием новой CSS-подобной системы определения стилей, применяемой в GTK3. Все…
🔥8
https://opennet.ru/59026/
Вот наша страна хотя бы в чём-то впереди всех. Что одназначно радует
Вот наша страна хотя бы в чём-то впереди всех. Что одназначно радует
www.opennet.ru
Джонатан Картер в четвёртый раз переизбран на пост лидера проекта Debian
Объявлены результаты ежегодных выборов лидера проекта Debian. Победу одержал Джонатан Картер (Jonathan Carter), который был переизбран на четвёртый срок. В этом году выборы были примечательны тем, что на них был выставлен только один кандидат, что свело голосование…
👍5😁1
В Nautilus из 45 гнома обновили меню настроек столбцов. Около 20 лет это окно было неизменным... Радует, что настолько старые вещи всё равно обновляют - в 44 GNOME добавили Icon-view в окно выбора файлов, в 45 шлифуют другие окна для работы с файлами
🔥6👍3
Поздравляю всех вас с великим Днём Победы! Для каждого из нас это, безусловно, священная дата. Тех, кто воевал тогда, мы искренне благодарим и гордимся ими. Если бы не они, нас бы здесь могло и не быть. Светлая память всем тем, кто воевал за свободу и независимость, за мирное небо, за право жить.
"Праздник со слезами на глазах" — эта дата священна для каждого из нас, но я не вижу поводов для веселья, особенно сегодня в свете текущих событий. Возможно, я неправ, но я считаю, что те, кто веселится в этот день, бухает и начинает устраивать адский угар — просто пляшет на костях своих предков. Это не есть хорошо. Да, то, что мы тогда победили — это вселяет гордость. Может быть, даже радость за то, что сейчас этой гадости, с которой мы тогда боролись, уже нет. Но тем не менее — это была страшная и кровопролитная война, которая унесла около 27 млн жизней ни в чём неповинных людей. Помните о том, за что и против чего боролись ваши деды и прадеды, и не допустите повторения этих событий в будущем.
Можно много говорить о том, что история должна нас чему-то научить. Нет — она не должна ничему учить. Человек сам должен учиться и выносить из истории правильные уроки. Но, как мы можем наблюдать, человек не учится. Поэтому очень важно, всё-таки, не превращать такие даты в весёлые праздники, а думать о том, как и почему началась ВОВ, как она завершилась и к чему всё это привело мир в будущем. Только тогда мы сможем если не предотвратить кровопролитие на земле, то хотя бы научиться хоть какие-то вопросы решать дипломатическим путём.
"Праздник со слезами на глазах" — эта дата священна для каждого из нас, но я не вижу поводов для веселья, особенно сегодня в свете текущих событий. Возможно, я неправ, но я считаю, что те, кто веселится в этот день, бухает и начинает устраивать адский угар — просто пляшет на костях своих предков. Это не есть хорошо. Да, то, что мы тогда победили — это вселяет гордость. Может быть, даже радость за то, что сейчас этой гадости, с которой мы тогда боролись, уже нет. Но тем не менее — это была страшная и кровопролитная война, которая унесла около 27 млн жизней ни в чём неповинных людей. Помните о том, за что и против чего боролись ваши деды и прадеды, и не допустите повторения этих событий в будущем.
Можно много говорить о том, что история должна нас чему-то научить. Нет — она не должна ничему учить. Человек сам должен учиться и выносить из истории правильные уроки. Но, как мы можем наблюдать, человек не учится. Поэтому очень важно, всё-таки, не превращать такие даты в весёлые праздники, а думать о том, как и почему началась ВОВ, как она завершилась и к чему всё это привело мир в будущем. Только тогда мы сможем если не предотвратить кровопролитие на земле, то хотя бы научиться хоть какие-то вопросы решать дипломатическим путём.
❤10👍5
Немного про AppImage. Часть 1. Краткое введение.
AppImage долгое время является моим любимым форматом распространения ПО. У него достаточно интересная философия: во-первых, ПО в этом формате самодостаточное, т.е. все его зависимости расположены вместе с основной программой в пакете (подробнее об этом поговорим в одной из следующих частей), во-вторых, философия "одна программа = один файл" мне очень близка и чем-то напоминает формат распространения ПО из macOS (об этом писал один хороший человек здесь).
Если сравнивать AppImage и обычные "нативные" пакеты для GNU/Linux, то можно выявить свои достоинства и недостатки. Самым главным достоинством я считаю возможность присутствия в системе нескольких версий одной и той же программы. Бывает, когда в новой версии софтины что-то сломали, удалили или переделали, и приходится сидеть на более старой версии. Не всегда можно откатиться до более старой версии используя обычные пакеты для GNU/Linux. Кроме того это вопрос зависимостей. Мы можем положить какие-то специфичные зависимости в AppImage пакет вместе с искомой программой, а какие-то оставшиеся зависимости, которые 100% существуют в системе, мы можем туда не класть - они могут подтянуться из основной системы самостоятельно. Я заметил такое поведение когда собирал нужные мне AppImage пакеты. Прикольная вещь, ибо мы можем даже уменьшить размер AppImage пакета, положив туда только то, чего точно нет в системе. А то, что точно в системе есть, будет только там и не будет продублировано в пакете. Крррасота!
Ну и, что самое главное, это унификация. У нас есть
Для меня основным минусом является то, что в пакете может быть несколько программ, а файл AppImage с этим пакетом только один. К примеру, возьмём пакет LibreOffice. Он состоит из нескольких программ: Writer, Calc и Impress. Есть ещё Startcenter, это программа со списком последних документов, с которыми мы работали, ну и она содержит кнопки для создания новых документов. Я не могу просто так взять и запустить Writer, мне нужно запустить startcenter, и уже оттуда запустить Writer. Тоже самое и с другими программами. А если в пакете нет ничего вроде того самого startcenter, то хрен ты что-то запустишь. В общем, такой вот минус.
Во второй части хочу написать про создание своих пакетов AppImage. В официальной документации написано не очень понятно, да ещё и на англицком. Но мы же не знаем англицкий 🤡. На самом деле, там ничего сложного нет.
LinuxSovet
#AppImage
AppImage долгое время является моим любимым форматом распространения ПО. У него достаточно интересная философия: во-первых, ПО в этом формате самодостаточное, т.е. все его зависимости расположены вместе с основной программой в пакете (подробнее об этом поговорим в одной из следующих частей), во-вторых, философия "одна программа = один файл" мне очень близка и чем-то напоминает формат распространения ПО из macOS (об этом писал один хороший человек здесь).
Если сравнивать AppImage и обычные "нативные" пакеты для GNU/Linux, то можно выявить свои достоинства и недостатки. Самым главным достоинством я считаю возможность присутствия в системе нескольких версий одной и той же программы. Бывает, когда в новой версии софтины что-то сломали, удалили или переделали, и приходится сидеть на более старой версии. Не всегда можно откатиться до более старой версии используя обычные пакеты для GNU/Linux. Кроме того это вопрос зависимостей. Мы можем положить какие-то специфичные зависимости в AppImage пакет вместе с искомой программой, а какие-то оставшиеся зависимости, которые 100% существуют в системе, мы можем туда не класть - они могут подтянуться из основной системы самостоятельно. Я заметил такое поведение когда собирал нужные мне AppImage пакеты. Прикольная вещь, ибо мы можем даже уменьшить размер AppImage пакета, положив туда только то, чего точно нет в системе. А то, что точно в системе есть, будет только там и не будет продублировано в пакете. Крррасота!
Ну и, что самое главное, это унификация. У нас есть
*.deb, *.rpm, пакеты для ArchLinux, пакеты для ещё какого-то дистрибутива... Мне нужно писать программу, а не пакетировать её для зоопарка дистрибутивов GNU/Linux, даже несмотря на наличие у этих дистрибутивов мейнтейнеров, которые могут сами всё собрать. Мейнтейнеры - это люди непредсказуемые. Могут так собрать программу, что в ней половина функций вообще отвалится. Периодически сталкивался с этим. Вот когда у нас есть, скажем, Flatpak для какого-то крупного и, как правило, коммерческого софта, и есть AppImage для всего остального - вот это круто. Не придётся думать, а для какого же дистрибутива мне делать пакет.Для меня основным минусом является то, что в пакете может быть несколько программ, а файл AppImage с этим пакетом только один. К примеру, возьмём пакет LibreOffice. Он состоит из нескольких программ: Writer, Calc и Impress. Есть ещё Startcenter, это программа со списком последних документов, с которыми мы работали, ну и она содержит кнопки для создания новых документов. Я не могу просто так взять и запустить Writer, мне нужно запустить startcenter, и уже оттуда запустить Writer. Тоже самое и с другими программами. А если в пакете нет ничего вроде того самого startcenter, то хрен ты что-то запустишь. В общем, такой вот минус.
Во второй части хочу написать про создание своих пакетов AppImage. В официальной документации написано не очень понятно, да ещё и на англицком. Но мы же не знаем англицкий 🤡. На самом деле, там ничего сложного нет.
LinuxSovet
#AppImage
👍6❤3
