OpenArena — это бесплатный и открытый клон популярной игры Quake III Arena. Проект был создан для того, чтобы предоставить многопользовательский шутер от первого лица с открытым исходным кодом, который не требует коммерческих активов.
Игра полностью свободна и включает собственные ресурсы, такие как текстуры и модели. Доступна на Windows, Linux и macOS. Благодаря открытости проекта, сообщество активно создает моды и новые карты, поддерживая актуальность игры.
Установка в Debian:
Запуск игры:
> GitHub
> Salsa
#games #opensource
Игра полностью свободна и включает собственные ресурсы, такие как текстуры и модели. Доступна на Windows, Linux и macOS. Благодаря открытости проекта, сообщество активно создает моды и новые карты, поддерживая актуальность игры.
Установка в Debian:
$ apt-get install -y openarena
Запуск игры:
$ openarena
> GitHub
> Salsa
#games #opensource
👍10❤3
Максимальный размер файла/репозитория на GitHub и немного про git-lfs
GitHub рекомендует, чтобы размер отдельных файлов в репозитории не превышал 50 МБ. Если файл больше этого размера, вы получите предупреждение. Для оптимальной производительности желательно, чтобы весь репозиторий был меньше 1-5 ГБ. Это помогает поддерживать высокую скорость и эффективность работы с репозиториями на платформе. На других платформах GitLab, Bitbucket +- тоже самое.
Если вам нужно хранить более крупные файлы, можно использовать Git Large File Storage (Git LFS), который имеет отдельные ограничения и квоты.
Установка:
Инициализация Git LFS в репозитории:
Отследить тяжелый файл с помощью Git LFS (например,
Это создаст или обновит файл
Затем добавить изменения в Git:
Отправить изменения:
Эти шаги помогут вам эффективно управлять большими файлами в вашем репозитории, используя возможности Git LFS.
Важно понимать, что у Git LFS тоже есть лимит. В бесплатном тарифе пользователь получает 1 ГБ. Повышение = деньги.
#git
GitHub рекомендует, чтобы размер отдельных файлов в репозитории не превышал 50 МБ. Если файл больше этого размера, вы получите предупреждение. Для оптимальной производительности желательно, чтобы весь репозиторий был меньше 1-5 ГБ. Это помогает поддерживать высокую скорость и эффективность работы с репозиториями на платформе. На других платформах GitLab, Bitbucket +- тоже самое.
Если вам нужно хранить более крупные файлы, можно использовать Git Large File Storage (Git LFS), который имеет отдельные ограничения и квоты.
Установка:
$ apt-get install -y git-lfs
Инициализация Git LFS в репозитории:
$ git lfs install
Отследить тяжелый файл с помощью Git LFS (например,
result.gif превышает 50 МБ):$ git lfs track "result.gif"
Это создаст или обновит файл
.gitattributes с информацией о том, что result.gif должен управляться через LFS.Затем добавить изменения в Git:
$ git add .gitattributes result.gif
$ git commit -m "Add result.gif with Git LFS"
Отправить изменения:
$ git push
Эти шаги помогут вам эффективно управлять большими файлами в вашем репозитории, используя возможности Git LFS.
Важно понимать, что у Git LFS тоже есть лимит. В бесплатном тарифе пользователь получает 1 ГБ. Повышение = деньги.
#git
👍16❤2
git-format-patch
Данная команда используется для создания набора патчей в формате электронной почты из коммитов в репозитории Git. Она полезна для обмена изменений между разработчиками, особенно в проектах с открытым исходным кодом, где обсуждение и пересылка патчей происходит через списки рассылки.
Команда генерирует файлы патчей в формате
Например, создать патч из последнего коммита:
В текущей директории появится патч с названием коммита, который будет содержать все правки последнего коммита.
Создать три патча из трех последних коммитов:
#git
Данная команда используется для создания набора патчей в формате электронной почты из коммитов в репозитории Git. Она полезна для обмена изменений между разработчиками, особенно в проектах с открытым исходным кодом, где обсуждение и пересылка патчей происходит через списки рассылки.
Команда генерирует файлы патчей в формате
.patch, которые содержат изменения из одного или нескольких коммитов. Эти файлы включают всю информацию о коммите: изменения в коде, метаданные автора и коммитера, сообщения коммита.Например, создать патч из последнего коммита:
$ cd my-git-project/
$ git format-patch HEAD~1
В текущей директории появится патч с названием коммита, который будет содержать все правки последнего коммита.
Создать три патча из трех последних коммитов:
$ git format-patch HEAD~3
#git
🔥9👍2
Аббревиатуры
В процессе работы с PL/MR на Git платформах часто используются сокращения, которые делают общение более быстрым и понятным:
- PTAL (Please Take A Look): Привлекает внимание к задаче или изменениям для получения комментариев или одобрения. Используйте, чтобы попросить коллегу взглянуть на код.
- LGTM (Looks Good To Me): Выражает одобрение изменений. Используйте, чтобы показать, что код вас устраивает и готов к слиянию.
- WIP (Work In Progress): Указывает, что работа над задачей ещё не завершена. Это предупреждение для ревьюеров, чтобы они не тратили время на детальный обзор, пока код не будет готов.
- NIT (Nitpick): Применяется для указания на несущественные замечания или предложения по улучшению кода, которые не являются обязательными для исправления.
- FYI (For Your Information): Используется, чтобы предоставить информацию без необходимости немедленного действия. Обычно применяется, чтобы держать команду в курсе изменений или решений.
- RFC (Request For Comments): Используется, чтобы попросить мнения или предложения по задаче или конкретному решению. Это приглашение к обсуждению, особенно если есть сомнения в выборе подхода.
Эти аббревиатуры помогут сделать ваше взаимодействие в команде более эффективным!
#git #misc
В процессе работы с PL/MR на Git платформах часто используются сокращения, которые делают общение более быстрым и понятным:
- PTAL (Please Take A Look): Привлекает внимание к задаче или изменениям для получения комментариев или одобрения. Используйте, чтобы попросить коллегу взглянуть на код.
- LGTM (Looks Good To Me): Выражает одобрение изменений. Используйте, чтобы показать, что код вас устраивает и готов к слиянию.
- WIP (Work In Progress): Указывает, что работа над задачей ещё не завершена. Это предупреждение для ревьюеров, чтобы они не тратили время на детальный обзор, пока код не будет готов.
- NIT (Nitpick): Применяется для указания на несущественные замечания или предложения по улучшению кода, которые не являются обязательными для исправления.
- FYI (For Your Information): Используется, чтобы предоставить информацию без необходимости немедленного действия. Обычно применяется, чтобы держать команду в курсе изменений или решений.
- RFC (Request For Comments): Используется, чтобы попросить мнения или предложения по задаче или конкретному решению. Это приглашение к обсуждению, особенно если есть сомнения в выборе подхода.
Эти аббревиатуры помогут сделать ваше взаимодействие в команде более эффективным!
#git #misc
👍12❤2🤣2
Mistral AI
Это чат-бот на основе искусственного интеллекта, разработанный компанией Mistral AI (аналог ChatGPT). Он создан для обработки и генерации текста, схож с другими современными языковыми моделями и может использоваться для различных задач, таких как создание контента, ответы на вопросы и взаимодействие с пользователями. На данный момент чат работает в бесплатном режиме.
Основные характеристики:
1. Функционал: он может выполнять разнообразные текстовые задачи, включая написание статей, помощь в обучении, генерацию креативного контента и многое другое.
2. Преимущества: Модель отличается высокой точностью и способностью обрабатывать контекст, что делает её полезной для как личного использования, так и для бизнеса.
Ссылка: chat.mistral.ai
#misc
Это чат-бот на основе искусственного интеллекта, разработанный компанией Mistral AI (аналог ChatGPT). Он создан для обработки и генерации текста, схож с другими современными языковыми моделями и может использоваться для различных задач, таких как создание контента, ответы на вопросы и взаимодействие с пользователями. На данный момент чат работает в бесплатном режиме.
Основные характеристики:
1. Функционал: он может выполнять разнообразные текстовые задачи, включая написание статей, помощь в обучении, генерацию креативного контента и многое другое.
2. Преимущества: Модель отличается высокой точностью и способностью обрабатывать контекст, что делает её полезной для как личного использования, так и для бизнеса.
Ссылка: chat.mistral.ai
#misc
❤🔥7👎1🤨1
apt-rdepends
Это утилита для рекурсивного отображения зависимостей пакетов. Можно отобразить Depends, а можно Build-Depends.
Вывести рекурсивно зависимости пакета hello:
Отобразить пакеты, которые зависят от указанного пакета (обратные зависимости):
Показывает статусы зависимостей (установлен/не установлен):
Вывести зависимости пакета в виде графа:
Вывести сборочные зависимости пакета:
#debian #utils
Это утилита для рекурсивного отображения зависимостей пакетов. Можно отобразить Depends, а можно Build-Depends.
$ apt-get install -y apt-rdepends
Вывести рекурсивно зависимости пакета hello:
$ apt-rdepends hello
Отобразить пакеты, которые зависят от указанного пакета (обратные зависимости):
$ apt-rdepends -r hello
Показывает статусы зависимостей (установлен/не установлен):
$ apt-rdepends -p hello
Вывести зависимости пакета в виде графа:
$ apt-rdepends -d hello
Вывести сборочные зависимости пакета:
$ apt-rdepends -b hello
#debian #utils
❤9⚡3✍3👍1
Что такое транзитивные зависимости пакета?
Транзитивные зависимости — это зависимости, которые возникают не напрямую от пакета, который вы устанавливаете, а от его зависимостей. Проще говоря, это зависимости зависимостей.
Например, предположим, что у вас есть пакет A, который зависит от пакета B, и пакет B, в свою очередь, зависит от пакета C. В этом случае:
- Пакет B является прямой зависимостью пакета A.
- Пакет C является транзитивной зависимостью пакета A, потому что он необходим для работы пакета B, который, в свою очередь, необходим для работы пакета A.
Когда вы используете
#debian #utils
Транзитивные зависимости — это зависимости, которые возникают не напрямую от пакета, который вы устанавливаете, а от его зависимостей. Проще говоря, это зависимости зависимостей.
Например, предположим, что у вас есть пакет A, который зависит от пакета B, и пакет B, в свою очередь, зависит от пакета C. В этом случае:
- Пакет B является прямой зависимостью пакета A.
- Пакет C является транзитивной зависимостью пакета A, потому что он необходим для работы пакета B, который, в свою очередь, необходим для работы пакета A.
Когда вы используете
apt-rdepends, чтобы увидеть зависимости пакета, он покажет вам как прямые, так и транзитивные зависимости, предоставляя полное дерево зависимостей для данного пакета. Это особенно полезно для понимания полной цепочки зависимостей, которые будут установлены вместе с целевым пакетом.#debian #utils
👍11⚡4
Сортировка и удаление дубликатов в файле
Предположим, ваш файл содержит около 8 тысяч строк с путями, и вы не уверены, есть ли среди них дубликаты. Как можно упорядочить и очистить файл?
В файле много подобных строк:
Команда выглядит так:
#shell #utils
Предположим, ваш файл содержит около 8 тысяч строк с путями, и вы не уверены, есть ли среди них дубликаты. Как можно упорядочить и очистить файл?
В файле много подобных строк:
po/ru/man1/arch.1.po
po/ru/man1/arch.1.po
po/ru/man1/b2sum.1.po
po/ru/man1/base32.1.po
po/ru/man1/base64.1.po
po/ru/man1/basename.1.po
po/ru/man1/basename.1.po
Команда выглядит так:
$ sort paths.txt | uniq > clean-paths.txt
#shell #utils
🔥12👍5😁1
Vim
Это не IDE в традиционном понимании, а скорее текстовый редактор. Однако благодаря своей расширяемости и поддержке множества плагинов, Vim можно настроить так, чтобы он функционировал как полноценная IDE.
Вот несколько инструментов и плагинов, которые часто используются для превращения Vim в мощную IDE:
1. fzf: Это командный инструмент для поиска файлов, который можно интегрировать с Vim для быстрого поиска и открытия файлов в проекте. Он помогает навигации по большим кодовым базам.
2. NERDTree: Плагин для управления файловой системой, который предоставляет дерево каталогов, подобное тому, что есть в других IDE. Это помогает легко перемещаться между файлами проекта.
3. vim-better-whitespace: Плагин, который подсвечивает и удаляет лишние пробелы в коде. Он помогает поддерживать чистоту и консистентность стиля кодирования, улучшая читаемость и предотвращая ошибки.
и многие другие.
Ссылка на мой .vimrc
#shell #dotfiles
Это не IDE в традиционном понимании, а скорее текстовый редактор. Однако благодаря своей расширяемости и поддержке множества плагинов, Vim можно настроить так, чтобы он функционировал как полноценная IDE.
Вот несколько инструментов и плагинов, которые часто используются для превращения Vim в мощную IDE:
1. fzf: Это командный инструмент для поиска файлов, который можно интегрировать с Vim для быстрого поиска и открытия файлов в проекте. Он помогает навигации по большим кодовым базам.
2. NERDTree: Плагин для управления файловой системой, который предоставляет дерево каталогов, подобное тому, что есть в других IDE. Это помогает легко перемещаться между файлами проекта.
3. vim-better-whitespace: Плагин, который подсвечивает и удаляет лишние пробелы в коде. Он помогает поддерживать чистоту и консистентность стиля кодирования, улучшая читаемость и предотвращая ошибки.
и многие другие.
Ссылка на мой .vimrc
#shell #dotfiles
👍12❤2🎄1
fzf, fzy, ripgrep утилиты
Установка:
fzf (Fuzzy Finder) — это интерактивный инструмент командной строки для нечеткого поиска и фильтрации. Пример использования:
fzy — аналогичный инструмент, ориентированный на скорость и простоту, неинтерактивный, но также эффективен для фильтрации. Пример:
ripgrep (rg) — мощный и быстрый инструмент для поиска текста в файлах. Поддерживает рекурсивный поиск и регулярные выражения, игнорирует файлы, указанные в
Все три утилиты отлично дополняют рабочие процессы разработчиков, ускоряя поиск и навигацию по проектам. Часто используются в совокупности с Vim, или другими текстовыми редакторами/IDE.
#shell #utils
Установка:
$ apt-get install -y fzf fzy ripgrep
fzf (Fuzzy Finder) — это интерактивный инструмент командной строки для нечеткого поиска и фильтрации. Пример использования:
$ find . -type f | fzf
fzy — аналогичный инструмент, ориентированный на скорость и простоту, неинтерактивный, но также эффективен для фильтрации. Пример:
$ find . -type f | fzy
ripgrep (rg) — мощный и быстрый инструмент для поиска текста в файлах. Поддерживает рекурсивный поиск и регулярные выражения, игнорирует файлы, указанные в
.gitignore. Идеален для поиска текста в проектах:$ rg 'search_term'
Все три утилиты отлично дополняют рабочие процессы разработчиков, ускоряя поиск и навигацию по проектам. Часто используются в совокупности с Vim, или другими текстовыми редакторами/IDE.
#shell #utils
✍6❤2👍1
С новым 2025 годом, друзья! Настало 01/01/2025. Пусть этот год принесёт вам множество успехов и радостей. В мире технологий мы отмечаем впечатляющие вехи: Debian исполнилось 32 года, а Linux — 34 года! Эти системы продолжают вдохновлять нас своей стабильностью и открытостью, напоминая, что сообщество и сотрудничество могут создавать мощные и долговечные решения. Пусть ваши проекты в новом году будут такими же успешными и долговечными! Удачи и новых достижений!
#info
#info
☃10🎄4❤🔥3⚡1
Что такое udeb и dbgsym пакеты?
Udeb пакеты (micro debs) — это урезанные версии deb-пакетов, используемые в Debian Installer. Они содержат минимальный набор файлов, необходимых для установки системы, и оптимизированы для уменьшения размера, что критично при установке на ограниченные ресурсы.
Dbgsym пакеты — это специальные пакеты, содержащие отладочные символы для других пакетов. Они используются для упрощения процесса отладки программ, позволяя разработчикам и системным администраторам получить более подробную информацию об ошибках и сбоях, сохраняя основную систему без отладочной информации для экономии места.
#debian
Udeb пакеты (micro debs) — это урезанные версии deb-пакетов, используемые в Debian Installer. Они содержат минимальный набор файлов, необходимых для установки системы, и оптимизированы для уменьшения размера, что критично при установке на ограниченные ресурсы.
Dbgsym пакеты — это специальные пакеты, содержащие отладочные символы для других пакетов. Они используются для упрощения процесса отладки программ, позволяя разработчикам и системным администраторам получить более подробную информацию об ошибках и сбоях, сохраняя основную систему без отладочной информации для экономии места.
#debian
✍8❤1
SuperTux
SuperTux — это бесплатная и открытая 2D-платформенная игра, вдохновлённая классической серией игр Super Mario. В ней игрок управляет пингвином по имени Тукс, который путешествует через различные уровни, собирает бонусы и сражается с врагами, чтобы спасти свою подругу Пенни от злого босса Нолока.
Игра предлагает множество уровней с разнообразными ландшафтами и препятствиями, а также поддерживает создание собственных уровней с помощью встроенного редактора. Графика в игре выполнена в мультяшном стиле, а музыка и звуковые эффекты добавляют атмосферы.
Установка:
Полноэкранный запуск:
> GitHub
> Salsa
> Сайт
#games #opensource
SuperTux — это бесплатная и открытая 2D-платформенная игра, вдохновлённая классической серией игр Super Mario. В ней игрок управляет пингвином по имени Тукс, который путешествует через различные уровни, собирает бонусы и сражается с врагами, чтобы спасти свою подругу Пенни от злого босса Нолока.
Игра предлагает множество уровней с разнообразными ландшафтами и препятствиями, а также поддерживает создание собственных уровней с помощью встроенного редактора. Графика в игре выполнена в мультяшном стиле, а музыка и звуковые эффекты добавляют атмосферы.
Установка:
$ apt-get install -y supertux
Полноэкранный запуск:
$ supertux2 --fullscreen
> GitHub
> Salsa
> Сайт
#games #opensource
❤7☃3❤🔥2🥰1
Frozen Bubble
Frozen Bubble — это бесплатная и открытая аркадная игра. В ней игрок стреляет пузырями из пушки, чтобы создавать группы из трех и более пузырей одного цвета, заставляя их исчезать. Игра имеет яркую графику, веселые звуковые эффекты и поддерживает одиночный и многопользовательский режимы. Она также включает редактор уровней.
Установка:
Полноэкранный запуск:
> GitHub
> Salsa
#games #opensource
Frozen Bubble — это бесплатная и открытая аркадная игра. В ней игрок стреляет пузырями из пушки, чтобы создавать группы из трех и более пузырей одного цвета, заставляя их исчезать. Игра имеет яркую графику, веселые звуковые эффекты и поддерживает одиночный и многопользовательский режимы. Она также включает редактор уровней.
Установка:
$ apt-get install -y frozen-bubble
Полноэкранный запуск:
$ frozen-bubble --fullscreen
> GitHub
> Salsa
#games #opensource
☃7⚡1👎1