backend_PYTHON = \
src/backend/__init__.py \
src/backend/accounts.py \
+ src/backend/asterisk.py \
src/backend/base.py \
src/backend/blog.py \
+ src/backend/bugzilla.py \
src/backend/campaigns.py \
src/backend/countries.py \
src/backend/database.py \
src/backend/decorators.py \
src/backend/fireinfo.py \
+ src/backend/httpclient.py \
src/backend/hwdata.py \
src/backend/iuse.py \
src/backend/memcached.py \
src/backend/releases.py \
src/backend/resolver.py \
src/backend/settings.py \
- src/backend/talk.py \
- src/backend/tweets.py \
+ src/backend/toots.py \
src/backend/util.py \
src/backend/wiki.py \
src/backend/zeiterfassung.py
src/web/base.py \
src/web/blog.py \
src/web/boot.py \
+ src/web/docs.py \
src/web/donate.py \
- src/web/download.py \
+ src/web/downloads.py \
src/web/fireinfo.py \
src/web/handlers.py \
src/web/iuse.py \
src/web/nopaste.py \
src/web/people.py \
src/web/ui_modules.py \
+ src/web/users.py \
+ src/web/voip.py \
src/web/wiki.py
webdir = $(backenddir)/web
# TODO install the base for now and add all other templates later
templates_DATA = \
- src/templates/about.html \
src/templates/base.html \
src/templates/error.html \
src/templates/index.html
src/templates/auth/password-reset-initiation.html \
src/templates/auth/password-reset-successful.html \
src/templates/auth/register.html \
- src/templates/auth/register-spam.html \
src/templates/auth/register-success.html
templates_authdir = $(templatesdir)/auth
templates_auth_messagesdir = $(templates_authdir)/messages
+templates_auth_modules_DATA = \
+ src/templates/auth/modules/password.html \
+ src/templates/auth/modules/password.js
+
+templates_auth_modulesdir = $(templates_authdir)/modules
+
templates_blog_DATA = \
src/templates/blog/author.html \
src/templates/blog/base.html \
templates_donate_messagesdir = $(templates_donatedir)/messages
-templates_download_DATA = \
- src/templates/download/mirrors.html \
- src/templates/download/release.html \
- src/templates/download/thank-you.html
+templates_docs_DATA = \
+ src/templates/docs/base.html \
+ src/templates/docs/confirm-restore.html \
+ src/templates/docs/diff.html \
+ src/templates/docs/page.html \
+ src/templates/docs/revisions.html
+
+templates_docsdir = $(templatesdir)/docs
+
+templates_docs_files_DATA = \
+ src/templates/docs/files/detail.html
+
+templates_docs_filesdir = $(templates_docsdir)/files
-templates_downloaddir = $(templatesdir)/download
+templates_docs_modules_DATA = \
+ src/templates/docs/modules/diff.html \
+ src/templates/docs/modules/header.html
+
+templates_docs_modulesdir = $(templates_docsdir)/modules
+
+templates_downloads_DATA = \
+ src/templates/downloads/mirrors.html \
+ src/templates/downloads/release.html \
+ src/templates/downloads/thank-you.html
+
+templates_downloadsdir = $(templatesdir)/downloads
templates_fireinfo_DATA = \
src/templates/fireinfo/admin.html \
templates_nopaste_modulesdir = $(templates_nopastedir)/modules
templates_people_DATA = \
- src/templates/people/conferences.html \
- src/templates/people/call.html \
- src/templates/people/calls.html \
- src/templates/people/group.html \
- src/templates/people/groups.html \
src/templates/people/index.html \
- src/templates/people/passwd.html \
- src/templates/people/search.html \
- src/templates/people/sip.html \
- src/templates/people/stats.html \
src/templates/people/subscribed.html \
src/templates/people/unsubscribe.html \
- src/templates/people/unsubscribed.html \
- src/templates/people/user.html \
- src/templates/people/user-edit.html \
- src/templates/people/users.html
+ src/templates/people/unsubscribed.html
templates_peopledir = $(templatesdir)/people
templates_people_messagesdir = $(templates_peopledir)/messages
-templates_people_modules_DATA = \
- src/templates/people/modules/accounts-list.html \
- src/templates/people/modules/accounts-new.html \
- src/templates/people/modules/agent.html \
- src/templates/people/modules/cdr.html \
- src/templates/people/modules/channels.html \
- src/templates/people/modules/mos.html \
- src/templates/people/modules/password.html \
- src/templates/people/modules/password.js \
- src/templates/people/modules/registrations.html
-
-templates_people_modulesdir = $(templates_peopledir)/modules
-
templates_static_DATA = \
- src/templates/static/features.html \
+ src/templates/static/about.html \
src/templates/static/legal.html \
src/templates/static/help.html
templates_staticdir = $(templatesdir)/static
+templates_users_DATA = \
+ src/templates/users/delete.html \
+ src/templates/users/deleted.html \
+ src/templates/users/edit.html \
+ src/templates/users/index.html \
+ src/templates/users/passwd.html \
+ src/templates/users/show.html
+
+templates_usersdir = $(templatesdir)/users
+
+templates_users_groups_DATA = \
+ src/templates/users/groups/index.html \
+ src/templates/users/groups/show.html
+
+templates_users_groupsdir = $(templates_usersdir)/groups
+
+templates_users_modules_DATA = \
+ src/templates/users/modules/list.html
+
+templates_users_modulesdir = $(templates_usersdir)/modules
+
+templates_voip_DATA = \
+ src/templates/voip/index.html
+
+templates_voipdir = $(templatesdir)/voip
+
+templates_voip_modules_DATA = \
+ src/templates/voip/modules/conferences.html \
+ src/templates/voip/modules/outbound-registrations.html \
+ src/templates/voip/modules/queues.html \
+ src/templates/voip/modules/registrations.html
+
+templates_voip_modulesdir = $(templates_voipdir)/modules
+
templates_wiki_DATA = \
src/templates/wiki/404.html \
- src/templates/wiki/base.html \
src/templates/wiki/confirm-delete.html \
- src/templates/wiki/confirm-restore.html \
- src/templates/wiki/diff.html \
src/templates/wiki/edit.html \
- src/templates/wiki/page.html \
src/templates/wiki/recent-changes.html \
- src/templates/wiki/revisions.html \
src/templates/wiki/search-results.html \
src/templates/wiki/tree.html \
src/templates/wiki/watchlist.html
templates_wikidir = $(templatesdir)/wiki
templates_wiki_files_DATA = \
- src/templates/wiki/files/detail.html \
src/templates/wiki/files/index.html
templates_wiki_filesdir = $(templates_wikidir)/files
templates_wiki_messagesdir = $(templates_wikidir)/messages
templates_wiki_modules_DATA = \
- src/templates/wiki/modules/diff.html \
- src/templates/wiki/modules/list.html \
- src/templates/wiki/modules/navbar.html
+ src/templates/wiki/modules/list.html
templates_wiki_modulesdir = $(templates_wikidir)/modules
src/static/img/apple-touch-icon-72x72-precomposed.png \
src/static/img/apple-touch-icon-60x60-precomposed.png \
src/static/img/bash-logo.svg \
- src/static/img/bg-img.jpg \
src/static/img/debian-logo.svg \
src/static/img/default-avatar.jpg \
src/static/img/ipfire-tux.png \
static_imagesdir = $(staticdir)/images
+EXTRA_DIST += \
+ src/static/videos/firewall.mp4
+
+CLEANFILES += \
+ $(static_videos_DATA)
+
+static_videos_DATA = \
+ src/static/videos/firewall.jpg \
+ src/static/videos/firewall@1920.av1.mp4 \
+ src/static/videos/firewall@1920.hevc.mp4 \
+ src/static/videos/firewall@1920.h264.mp4
+
+static_videosdir = $(staticdir)/videos
+
static_js_DATA = \
src/static/js/Control.Geocoder.min.js \
src/static/js/editor.js \
-extent $(patsubst src/static/img/apple-touch-icon-%-precomposed.png,%,$@)x$(patsubst src/static/img/apple-touch-icon-%-precomposed.png,%,$@) \
$< $@
+# Video Stuff
+
+FFMPEG += \
+ -loglevel quiet
+
+# AV1
+src/static/videos/firewall@%.av1.mp4: src/static/videos/firewall.mp4
+ $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
+ $(FFMPEG) -y \
+ -i $^ \
+ -map_metadata -1 \
+ -an \
+ -c:v libsvtav1 \
+ -crf 31 \
+ -preset 5 \
+ -pix_fmt yuv420p \
+ -movflags +faststart \
+ -vf scale=$(patsubst src/static/videos/firewall@%.av1.mp4,%,$@):-2,fps=25 \
+ $@
+
+# HEVC
+src/static/videos/firewall@%.hevc.mp4: src/static/videos/firewall.mp4
+ $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
+ $(FFMPEG) -y \
+ -i $^ \
+ -map_metadata -1 \
+ -an \
+ -c:v libx265 \
+ -crf 25 \
+ -preset veryslow \
+ -pix_fmt yuv420p \
+ -movflags +faststart \
+ -tag:v hvc1 \
+ -vf scale=$(patsubst src/static/videos/firewall@%.hevc.mp4,%,$@):-2,fps=25 \
+ $@
+
+# H.264
+src/static/videos/firewall@%.h264.mp4: src/static/videos/firewall.mp4
+ $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
+ $(FFMPEG) -y \
+ -i $^ \
+ -map_metadata -1 \
+ -an \
+ -c:v libx264 \
+ -crf 27 \
+ -preset veryslow \
+ -profile:v main \
+ -pix_fmt yuv420p \
+ -movflags +faststart \
+ -vf scale=$(patsubst src/static/videos/firewall@%.h264.mp4,%,$@):-2,fps=25 \
+ $@
+
+# Cover image
+src/static/videos/firewall.jpg: src/static/videos/firewall.mp4
+ $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
+ $(FFMPEG) -y \
+ -i $^ \
+ -map_metadata -1 \
+ -qscale:v 1 \
+ -frames:v 1 \
+ -vf scale=1920:-2 \
+ $@
+
.PHONY: update
update:
for i in src/systemd/ipfire.org-webapp-*.service; do systemctl restart $$(basename $${i}) && sleep 5; done