Новый стандарт ~/Projects и неделя Linux supply-chain реальности

Новый каталог ~/Projects может стать полезным стандартом, а инциденты с PyPI и CI/CD снова напоминают о рисках supply-chain.

2026-05-14 GIGATAP Team #tools
#linux#fedora#ubuntu

Новый стандарт ~/Projects уже на подходе — и это не просто косметика#

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

В It’s FOSS Weekly #26.18 одним из главных пунктов стал новый стандартный каталог в домашней папке: директория Projects. Многие и так создают что-то подобное вручную. Смысл в том, чтобы сделать это «официальным»: тогда приложения смогут воспринимать этот путь как место по умолчанию, а не как личную привычку пользователя.

Если такая конвенция приживется, она снизит трение между инструментами: IDE, file picker, developer portal и onboarding-документация смогут опираться на разумное значение по умолчанию, не заставляя каждого пользователя придумывать собственную структуру папок.

Что известно из рассылки#

В Weekly новый каталог Projects описан как «большая новость» для Linux-дистрибутивов: стандартная запись внутри $HOME, которую приложения могут использовать по умолчанию.

В выпуске также упоминается набор других Linux и open-source тем, включая:

  • Firefox «тихо» использует open-source движок Brave adblock-rust, без упоминания в release notes. В рассылке говорится, что он отключен по умолчанию, не имеет UI и может быть включен через about:config.
  • GitHub-репозиторий MinIO снова был архивирован после того, как ранее, по формулировке рассылки, перешел в maintenance mode.
  • Серия релизов Ubuntu, упомянутых в Weekly. Исходный текст перечисляет набор возможностей как highlights: GNOME 50, версия Linux kernel, Wayland-only, новые приложения по умолчанию, «deb packages back in App Center» и «post-quantum crypto out of box», но фрагмент не позволяет однозначно привязать каждую функцию к конкретной версии Ubuntu.
  • Релиз Fedora 44 после двухнедельной задержки, как указано в рассылке. Weekly приписывает Fedora 44: Linux 6.19, GNOME 50, Plasma 6.6, NTSYNC для лучшей производительности Windows-игр и обновленный spin «Games Lab».
  • Инцидент в стиле supply-chain: уязвимость в GitHub Actions workflow проекта Elementary Data позволила атакующему опубликовать пакет в PyPI «менее чем за десять минут». В рассылке отдельно упоминается elementary-data 0.23.3 и говорится, что затронутым пользователям «есть чем заняться».
  • LVFS, Linux Vendor Firmware Service, описан как проект с одним full-time developer и без security team, при этом он распространяет firmware updates в больших масштабах. По словам рассылки, vendors могут столкнуться с download quotas и feature restrictions, если не будут спонсировать проект.
  • Терминал Warp стал open source: код с dual MIT и AGPL лицензированием теперь доступен на GitHub.
  • Замечание о том, что Microsoft «возможно, рассматривает rebasing Azure Linux на Fedora» — это подано как возможность, а не как подтвержденный результат.

Weekly также направляет читателей к петиции за выпуск native Linux build для Rhino 3D, а еще упоминает набор советов и проектов: GNOME extensions, интеграцию KDE Connect через GNOME extension, проект KVM-over-IP устройства и эксперимент в духе «WSL для Windows 95/98/ME».

Почему каталог Projects важен на практике#

Новый стандартный каталог звучит как мелочь — пока не начинаешь прослеживать последствия:

  1. Более удачные значения по умолчанию для приложений

Когда у приложений есть общее «ожидаемое» место для пользовательских project folders, они могут:

  • Предлагать более предсказуемый первый запуск: «Create new project in ~/Projects» без угадывания.
  • Снижать риск пользовательских ошибок, когда работа сохраняется во временных местах: Downloads, temp folders, случайные подкаталоги.
  • Улучшать переносимость onboarding-инструкций: «clone into ~/Projects» между разными дистрибутивами.
  1. Более согласованные политики backup и sync

Пользователи и так относятся к «projects» иначе, чем к media folders. Конвенция упрощает определение backup rules: например, «всегда делать backup ~/Projects», особенно в смешанных парках устройств, где нужна повторяемая политика.

  1. Более чистое разделение между «documents» и «working trees»

Во многих конфигурациях Documents смешивается с code/work trees. Отдельная папка Projects помогает проще рассуждать о permissions, tooling и cleanup.

Главное: ценность появляется не из-за самого существования директории, а из-за ее принятия инструментами. Именно на это и указывает рассылка: приложения могут начать использовать ее по умолчанию.

Другой сигнал недели: supply-chain risk снова выигрывает за счет скорости#

Пункт Weekly про Elementary Data/PyPI — самый резкий operational reminder в этом фрагменте.

Даже без дополнительных деталей, кроме приведенных здесь, картина знакомая:

  • Слабость в CI/CD pipeline, а именно GitHub Actions workflow.
  • Быстрая эскалация до package distribution через PyPI.
  • Конечным пользователям остается проверять установленные версии и выполнять rotation/cleanup.

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

Практический вывод#

Если вы администрируете Linux-рабочие станции или поддерживаете developer tooling, уже сейчас имеет смысл заложить ~/Projects в документацию и шаблоны onboarding, но без жесткой привязки: используйте его как рекомендуемый default, а не как обязательное требование. Это даст выигрыш в предсказуемости, не ломая существующие workflow пользователей.

Если вы поддерживаете Python-зависимости или CI/CD для пакетов, сделайте три конкретные проверки:

  • Проверьте, установлен ли elementary-data в ваших окружениях, и особенно встречается ли версия 0.23.3, отдельно упомянутая в рассылке.
  • Пересмотрите lockfiles, rebuild-образы и кэши окружений после удаления или замены подозрительных dependencies: одной правки requirements.txt часто недостаточно.
  • Проверьте release workflows в GitHub Actions: минимальные permissions, защищенные secrets, ручное подтверждение публикации, pinning actions по commit SHA и отдельные токены для публикации в registry.

Короткая версия: ~/Projects — хороший кандидат на новый удобный default для Linux-разработки, а инцидент с PyPI снова показывает, что release automation нужно защищать как production-систему, а не как вспомогательный скрипт.