SourceHut для начинающих

Минималистичная и этичная платформа для разработчиков open-source

Время изучения: 20 мин Уровень: Продвинутый Обновлено: Окт 2023

1
Философия SourceHut: минимализм и этика

SourceHut — это не просто ещё одна Git-платформа. Это философский ответ на усложнение современных инструментов разработки. Созданный Дрю Деволтом (создателем suckless.org), SourceHut следует принципам Unix-философии: "Делай одну вещь и делай её хорошо".

Ключевые принципы SourceHut:

  • Минимализм — интерфейс загружается за 0.5 секунды, без JavaScript по умолчанию
  • Этика — нет трекинга пользователей, нет рекламы, прозрачная политика
  • Открытость — весь код платформы открыт под свободными лицензиями
  • Простота — каждая функция существует потому, что она действительно нужна
  • Производительность — оптимизировано для скорости работы даже на медленных соединениях
Почему "этичный" хостинг кода?

SourceHut отличается от других платформ своей этической позицией:

  • Нет трекинга: Не используется Google Analytics, не отслеживаются клики пользователей
  • Нет рекламы: Платформа финансируется за счёт платных аккаунтов и пожертвований
  • Свободное ПО: Весь код SourceHut открыт под AGPL лицензией
  • Прозрачность: Все решения и изменения публикуются и обсуждаются открыто
  • Уважение к пользователю: Нет навязчивых уведомлений, нет попыток удержать вас на сайте

Это платформа для тех, кто ценит принципы свободного ПО и устал от "корпоративного" подхода GitHub/GitLab.

Минимализм в действии

Скорость

Страницы загружаются за 500 мс, интерфейс весит ~100 КБ

Без JavaScript

Основной интерфейс работает без JavaScript

Почтовые рассылки

Код-ревью через email, как в Linux kernel

2
Регистрация и создание проекта

Шаг 1: Регистрация на SourceHut

  1. Перейдите на sourcehut.org
  2. Нажмите "Sign up" в правом верхнем углу
  3. Введите email (никакого Google/GitHub OAuth!)
  4. Подтвердите email — получите письмо со ссылкой для входа
  5. Выберите уникальное имя пользователя

Важно: SourceHut использует email-based аутентификацию. Нет паролей — вы входите по ссылке из email.

Шаг 2: Создание репозитория

SourceHut поддерживает два типа систем контроля версий:

Git

Современная распределённая система

Mercurial

Альтернативная DVCS, проще чем Git

Для создания Git-репозитория:

  1. Войдите в аккаунт
  2. Перейдите в "Repositories" → "New repository"
  3. Выберите "Git repository"
  4. Укажите имя (например, my-sourcehut-site)
  5. Нажмите "Create"

3
sr.ht Pages: хостинг статических сайтов

SourceHut предоставляет sr.ht Pages — простой хостинг для статических сайтов. В отличие от GitHub Pages, здесь всё настраивается через конфигурационные файлы.

Для публикации сайта создайте файл .build.yml в корне репозитория:

.build.yml - конфигурация для Pages
image: alpine/latest packages: - rsync sources: - https://git.sr.ht/~yourusername/your-repo tasks: - upload: | mkdir -p ~/public_html rsync -av --delete ./ ~/public_html/

После пуша этого файла:

  1. SourceHut автоматически запустит сборку (build)
  2. Файлы будут скопированы в директорию ~/public_html
  3. Сайт станет доступен по адресу: https://yourusername.srht.site/your-repo

Пример для сайта на Hugo (статический генератор):

.build.yml - Hugo сайт
image: alpine/latest packages: - hugo - rsync sources: - https://git.sr.ht/~yourusername/hugo-site tasks: - build: | hugo --minify - upload: | rsync -av --delete public/ ~/public_html/

4
Уникальные возможности SourceHut

Lists

Почтовые рассылки для обсуждения

Builds

Легковесный CI/CD

Todos

Простая система задач

Man Pages

Хостинг документации

Builds — минималистичный CI/CD

Builds — это система непрерывной интеграции SourceHut. Она проще, чем GitLab CI или GitHub Actions, но покрывает 90% потребностей.

Особенность Builds GitHub Actions
Конфигурация Один .build.yml файл Множество workflow файлов
Сложность Просто, понятно Может быть сложно
Время запуска ~10 секунд ~30-60 секунд
Цена Бесплатно для всех Ограничения на бесплатных
Код-ревью через email: старый добрый способ

SourceHut использует почтовые рассылки для код-ревью, как это делается в ядре Linux:

  1. Вы отправляете патч по email в список рассылки проекта
  2. Участники обсуждают патч, отвечая на письмо
  3. Обсуждение сохраняется в архиве списка рассылки
  4. Когда патч готов, мейнтейнер применяет его

Преимущества:

  • Работает без JavaScript
  • Архив обсуждений легко искать
  • Интеграция с любимыми почтовыми клиентами
  • Нет привязки к веб-интерфейсу

Это может быть непривычно, но многие разработчики считают этот метод более эффективным.

Практическое задание: Минималистичный сайт

Создайте сайт на sr.ht Pages:

Зарегистрируйтесь на SourceHut (через email)
Создайте Git-репозиторий с именем my-site
Добавьте index.html с минимальным HTML (без CSS/JS)
Создайте .build.yml файл для публикации на Pages
Запушите изменения и проверьте сайт по адресу username.srht.site/my-site

Бонус: Создайте список рассылки для своего проекта и попробуйте отправить патч по email

5
Кому подходит SourceHut?

Выберите SourceHut, если:

  • Цените минимализм и простоту в инструментах
  • Хотите поддерживать этичные проекты без трекинга и рекламы
  • Работаете над open-source и хотите полного контроля
  • Устали от "раздутых" интерфейсов GitHub/GitLab
  • Хотите научиться работать с email-based workflow (как в больших open-source проектах)
  • Нужен быстрый и простой CI/CD без сложных конфигураций

Может не подойти, если:

  • Нужны социальные функции (звёзды, фолловеры)
  • Работаете в команде, которая любит GUI-интерфейсы
  • Зависите от интеграций с другими сервисами
  • Нужны продвинутые возможности CI/CD
  • Хотите "работать из коробки" без чтения документации

Для углубленного изучения

Изучите man-страницы SourceHut и блог проекта, где подробно объясняется философия платформы.

Предыдущий урок
Bitbucket для начинающих
Следующий урок
AWS Amplify для начинающих