diff --git a/.github/workflows/main.yml b/.github/workflows/build_on_commit.yml similarity index 100% rename from .github/workflows/main.yml rename to .github/workflows/build_on_commit.yml diff --git a/.github/workflows/send_new_issue_to_tg.yml b/.github/workflows/send_new_issue_to_tg.yml new file mode 100644 index 0000000..34eb9d0 --- /dev/null +++ b/.github/workflows/send_new_issue_to_tg.yml @@ -0,0 +1,16 @@ +name: Send new issue to Telegram +on: + issues: + types: [opened, reopened] +jobs: + build_latex: + runs-on: ubuntu-latest + steps: + - name: Send Telegram message + uses: appleboy/telegram-action@master + with: + to: ${{ secrets.TELEGRAM_CHANNEL_ID }} + token: ${{ secrets.TELEGRAM_TOKEN }} + message: | + ${{ github.event.issue.user.login }} created new issue "${{ github.event.issue.title }}" + See more by https://github.com/${{ github.repository }}/issues/${{ github.event.issue.number }} diff --git a/LICENSE.txt b/LICENSE.txt new file mode 100644 index 0000000..32b0439 --- /dev/null +++ b/LICENSE.txt @@ -0,0 +1,33 @@ +*********************************************** +** English version below ** +*********************************************** + +Лицензия на использование в образовательных целях + +Авторское право (c) 2024 Алексей Шепелев + +Настоящим разрешается использовать код, содержащийся в этом репозитории, исключительно в образовательных целях, включая, но не ограничиваясь обучением, преподаванием и академическими исследованиями. + +Применяются следующие ограничения: +- Код не может быть использован в коммерческих целях или для получения прибыли. +- Модификация, распространение или создание производных работ на основе кода строго запрещены без предварительного письменного разрешения правообладателя. +- Любое использование кода вне образовательных целей, включая, но не ограничиваясь коммерческим использованием, распространением и модификацией, запрещено. + +ОТКАЗ ОТ ГАРАНТИЙ: +Код предоставляется «как есть», без каких-либо гарантий, явных или подразумеваемых. Автор(ы) не несут ответственности за любые претензии, убытки или иные обязательства. + +*********************************************** + +Educational Use License + +Copyright (c) 2024 Aleksei Shepelev + +Permission is hereby granted to use the code contained in this repository solely for educational purposes, including but not limited to teaching, learning, and academic research. + +The following restrictions apply: +- The code may not be used for commercial purposes or for-profit activities. +- Modification, distribution, or creation of derivative works based on the code is strictly prohibited without prior written permission from the copyright holder. +- Any use outside of education, including but not limited to commercial use, redistribution, and modification, is not allowed. + +DISCLAIMER: +The code is provided "as is", without warranty of any kind, express or implied. In no event shall the author(s) be liable for any claim, damages, or other liability. diff --git a/README.md b/README.md index df9b8ec..7789f08 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,76 @@ # Астрадь -Астрадь является учебным пособием по астрономии, рекомендованным для школьников 7 -- 11 класса. Сборник составлен неоднократными призерами международных олимпиад по астрономии, членами астрономического кружка им. Е.П. Левитана г.о. Жуковский. -Здесь читатель сможет найти необходимый минимум теории для участия в различных олимпиадах школьников по астрономии. Также Астрадь можно использовать и для освоения школьной программы, потому что на ряду со сложными темами освещены и самые базовые вопросы астрономии. +В данном репозитории содержится исходный код будущего, уже третьего, издания Астради – сборника теории по астрономии. Стоит отметить, из определения Астради пропало слово "_краткий_". После печати второго издания було принято решение расширить круг тем и глубину их изложение и сделать третье, совершенно новое, издание. +### Почему исходный код стал открытым? + +Я, Алексей Шепелев, основной автор Астради, к сожалению, пришел к неутешительному выводу: вряд ли смогу самостоятельно закончить начатое. На это есть несколько причин, основная – я все меньше занимаюсь астрономией и её преподаванием, вторичная – после окончания университета и появления основной работы не хватает времени для поддержания должного уровня знаний в астрономии. + +Однако было бы грустно, если многие сотни часов работы над данным материалом будут закопаны, так и не принеся пользы. Поэтому было принято решение открыть репозиторий, чтобы любой желающий мог ознакомиться с **черновиками** и, быть может, узнать для себя что-то новое. + +Здесь важно подчеркнуть, что это именно черновики третьего издания. Конечно, все разделы имеют разную готовности: некоторые готовы полностью, некоторые остались нетронуты со второго издания и требуют доработки, некоторые написаны не полностью, где-то нет логической связи с другими разделами и пр. Но я уверен, ко ищет, тот найдет. Позже здесь в [README](README.md) появится список всех разделов с комментариями о готовности каждого. И описание планов по доработкам книги. + +Мы готовы к соавторству! Давайте доделаем этот проект вместе. Приносите свои Pull Requests в ветку master, технические подробности можно найти ниже. Позже появится доска, например, Trello, где можно будет ознакомиться в планами по доработкам Астради. Если вы уже сейчас хотите влиться в дружный коллектив авторов, пишите в Telegram [@ashepelevv](https://t.me/ashepelevv), в крайнем случае на почту [ashepelev@phystech.edu](mailto:shepelev.as@phystech.edu). + +### Что нового? +Пожалуй, не буду пегружать эту страницу, а лишь скажу, что в книге появилось предисловие от авторов. Там можно подробно ознакомиться о концепции книги, а задумке и мыслях авторов. Кто готов читать исходных код в LaTeX, то предисловие находится [здесь](sys/preface.tex). + +### Лицензия и ограничение на использование +Этот проект лицензирован в соответствии с _Лицензией на использование в образовательных целях_. Код может использоваться только в образовательных целях. Подробнее см. в файле [LICENSE](LICENSE.txt). + +Ниже приведени инструкции как скачать уже собранных PDF файл, как собрать его самостоятельно и как можно поучаствовать в написании Астради. + +## Как скачать PDF + +### Самый простой способ + +Периодически в папку [/export](export) будут добавляться новые версии полностью скомпилированной книжки. Чтобы скачать файл, перейдя открыв данную папку, нужно + +1. Нажать на название нужной версии ![Нажмите на название нужной версии](readme/pdf/export/filename.png) +2. В правом верхнем углу нажать на кнопку "Скачать" ![Скачать в правом верхнем углу](readme/pdf/export/download.png) + +### Получить актуальную версию +Своевременно появление версий в [/export](export) не гарантировано, так как происходит вручную. Однако в репозитории настроены автоматические действия при появлении нового коммита – собирается проект и результат доступен в виде PDF. Чтобы его скачать, нужно +1. Перейти во вкладку [Actions](https://github.com/AShepelevv/astro.notebook/actions). ![](readme/pdf/actions/actions-tab.png) +2. Если интересуют только "стабильные" версии, можно воспользоваться фильтром по ветке и указать там master. [Ссылка на фильтр](https://github.com/AShepelevv/astro.notebook/actions?query=branch%3Amaster) ![](readme/pdf/actions/stable-version.png) +3. Выбрать нужную сборку, например, ![](readme/pdf/actions/select-build.png) +4. Внизу страницы будет блок "Artifacts", единственный артифакт – это pdf. Справа кнопка, которой можно его скачать +![](readme/pdf/actions/artifact.png) + +**_P.S._** К сожалению в публичных репозиториях артифакты хранятся не более 90 дней. Постараемся своевременно обновлять версии в `/export`, чтобы перекрывать этот промежуток + +**_P.S.S._** При сборке на сервере используется флаг `useLightPlotVersion`, что означает что несколько (~4-5) иллюстраций не будут отрисованы. Однако эти иллюстрации давно пришли к своему финальному виду, и pdf в `/export` содержат их. ## Сборка +### Системные требования + +* [Tex Live 2024](https://www.tug.org/texlive/acquire-netinstall.html), полная версия +* Увеличить доступную оперативную память для LaTeX: + * Например, на Mac OS нужно в файл `~/Library/texmf/web2c/texmf.cnf` (создать, если его нет) записать следующее: + + ``` + main_memory = 10000000 + extra_mem_bot = 2000000 + extra_mem_top = 2000000 + param_size = 10000 + ``` + +### Запуск + ```bash sh build.sh ``` -Прогресс первой сборки (очень долгой) можно смотреть по увеливению количества файлов в созданной выше папке + +Прогресс первой сборки (очень долгой) можно смотреть по увеливению количества файлов в папке [tikz/resource](tikz/resource). Там будет храниться локальный кэш картинок, сгенерированных с помощью TikZ. + +## Соавторство + +Свои правки и идеи новых разделов приносите в виде Pull Request в ветку master, будем рады обсудить их и добавить в книжку. + +Для разработки дополнительно к пунктам из раздела **Сборка** может понадобиться: + +* [Python 3.*](https://www.python.org) +* [Jupyter Notebook](https://jupyter.org) +* [Wolfram Mathematica 14+](https://www.wolfram.com/mathematica/) +* [ipe](https://ipe.otfried.org) для правки старых иллюстрацих diff --git a/readme/pdf/actions/actions-tab.png b/readme/pdf/actions/actions-tab.png new file mode 100644 index 0000000..cebbaa0 Binary files /dev/null and b/readme/pdf/actions/actions-tab.png differ diff --git a/readme/pdf/actions/artifact.png b/readme/pdf/actions/artifact.png new file mode 100644 index 0000000..1db6926 Binary files /dev/null and b/readme/pdf/actions/artifact.png differ diff --git a/readme/pdf/actions/select-build.png b/readme/pdf/actions/select-build.png new file mode 100644 index 0000000..f3f4fd8 Binary files /dev/null and b/readme/pdf/actions/select-build.png differ diff --git a/readme/pdf/actions/stable-version.png b/readme/pdf/actions/stable-version.png new file mode 100644 index 0000000..b284688 Binary files /dev/null and b/readme/pdf/actions/stable-version.png differ diff --git a/readme/pdf/export/download.png b/readme/pdf/export/download.png new file mode 100644 index 0000000..eb80650 Binary files /dev/null and b/readme/pdf/export/download.png differ diff --git a/readme/pdf/export/filename.png b/readme/pdf/export/filename.png new file mode 100644 index 0000000..76f2940 Binary files /dev/null and b/readme/pdf/export/filename.png differ