Group: Guix/Video Documentation
(→Timeline) |
(→Timeline) |
||
Line 43: | Line 43: | ||
* Document the accepted process forthe first video. | * Document the accepted process forthe first video. | ||
|- | |- | ||
− | |6||2||07.01|| | + | |6||2||07.01.|| |
* Create the remaining videos about Installation: | * Create the remaining videos about Installation: | ||
** GuixSD on a VM. | ** GuixSD on a VM. | ||
** GuixSD on bare metal. | ** GuixSD on bare metal. | ||
|- | |- | ||
− | |7||3||14.01|| | + | |7||3||14.01.|| |
* Create videos for daily users: | * Create videos for daily users: | ||
**Using guix package command for installing, upgrading, and removing packages, and concepts that might arise - ie: transactional. | **Using guix package command for installing, upgrading, and removing packages, and concepts that might arise - ie: transactional. | ||
**Having guix up to date, concept of garbage collector, posibility of sharing packages with people who do not have guix (yet) | **Having guix up to date, concept of garbage collector, posibility of sharing packages with people who do not have guix (yet) | ||
|- | |- | ||
− | |8||4||21.01|| | + | |8||4||21.01.|| |
* Create videos for contributing | * Create videos for contributing | ||
** Different ways of contributing | ** Different ways of contributing | ||
** Troubleshooting and asking for help | ** Troubleshooting and asking for help | ||
|- | |- | ||
− | |9||5||28.01|| | + | |9||5||28.01.|| |
* Contributing or using guix as a developer: | * Contributing or using guix as a developer: | ||
** Differences between profiles and environments, working with them. | ** Differences between profiles and environments, working with them. | ||
** Packaging tutorial | ** Packaging tutorial | ||
|- | |- | ||
− | |10||6||04.02|| | + | |10||6||04.02.|| |
* Videos on common configuration tasks/ videos for daily use as a sysadmin | * Videos on common configuration tasks/ videos for daily use as a sysadmin | ||
** Example video: benefits and howto guix works isolating package installation for unprivileged users, garbage collector - already mentioned for daily users, but could also be mentioned for sysadmins, they might not watch the users videos. | ** Example video: benefits and howto guix works isolating package installation for unprivileged users, garbage collector - already mentioned for daily users, but could also be mentioned for sysadmins, they might not watch the users videos. | ||
|- | |- | ||
− | |11||7||11.02|| | + | |11||7||11.02.|| |
* Translate videos: | * Translate videos: | ||
** Refine the automated process for the slideshow and cli if necessary | ** Refine the automated process for the slideshow and cli if necessary | ||
Line 73: | Line 73: | ||
In my case I could try doing so in Spanish, but if any other translator could try it | In my case I could try doing so in Spanish, but if any other translator could try it | ||
|- | |- | ||
− | |12||8||18.02|| | + | |12||8||18.02.|| |
* Hosting videos, update Guix official webpage, get repo. | * Hosting videos, update Guix official webpage, get repo. | ||
|- | |- | ||
− | |13||9||25.02|| | + | |13||9||25.02.|| |
* Extra week : Guix Days and FOSDEM in between | * Extra week : Guix Days and FOSDEM in between | ||
|} | |} |
Revision as of 09:21, 14 December 2018
Contents
GNU Guix Video Documentation
During Outreachy phase 2018/2019 Laura Lazzati is creating video documentations for Guix. This page collects ideas about that project
Timeline
ORW=Outreachy-Week CWeek = Calendar week (in ISO8601)
ORW | CWeek | Monday | Task |
1 | 49 | 03.12. |
|
2 | 50 | 10.12. |
|
3 | 51 | 17.12. |
|
4 | 52 | 24.12. |
|
5 | 1 | 31.12. |
|
6 | 2 | 07.01. |
|
7 | 3 | 14.01. |
|
8 | 4 | 21.01. |
|
9 | 5 | 28.01. |
|
10 | 6 | 04.02. |
|
11 | 7 | 11.02. |
In my case I could try doing so in Spanish, but if any other translator could try it |
12 | 8 | 18.02. |
|
13 | 9 | 25.02. |
|
First Idea
A first proposal came from Ricardo:
https://lists.gnu.org/archive/html/guix-devel/2018-11/msg00386.html
I would like to recommend this workflow:
- create an environment:
guix environment --ad-hoc inkscape gettext itstool ffmpeg
- create slides in Inkscape (look at existing slides from past talks for style inspiration)
- extract texts as gettext template:
itstool -o slide.pot slide.svg
- initialize translation (e.g. for German):
msginit --locale=de --input=slide.pot
- translate texts in “de.po”
- compile “de.po” to “de.mo” binary format:
msgfmt de.po -o de.mo
- use itstool to create a translated SVG:
itstool -l de -m de.mo drawing.svg -o de/
This can be automated with a Makefile.
Translations themselves don’t have to be created as part of this project, but the pot files should be uploaded to the translationproject.org, which is what we already do for other Guix translations.
Once we’ve got the SVGs we can render them as PNGs in the desired output format with Inkscape (here as a Makefile rule):
%.png: %.svg inkscape -z --export-dpi=300 --export-png=$@ $<
Then write a simple concat demuxer file for ffmpeg to specify which slide to show for how long, e.g. this ’durations.txt’:
--8<---------------cut here---------------start------------->8--- file 'slide1.png' duration 5 file 'slide2.png' duration 1 file 'slide3.png' duration 3 file 'end.png' duration 2 file 'end.png' --8<---------------cut here---------------end--------------->8---
(According to the ffmpeg docs the last image has to be specified twice, the second time without a duration.)
Then compile this as a video:
ffmpeg -f concat -i durations.txt -vsync vfr -pix_fmt yuv420p output.mp4
(The above was taken from here: https://trac.ffmpeg.org/wiki/Slideshow)
With a slightly longer invocation we can merge an existing audio file into the output file (no need for a second call to ffmpeg).
I haven’t given much thought to subtitles yet. We could use the very simple “srt” format, which is just plain text, but maybe “usf” is better. It has support for styling and Unicode, and its format is XML, which means that we can use the same tools as above to handle translations.
Discussion about videos, apart from those mentioned in Outreachy site or in more detail
- Focus on more practical howtos aimed at people new to guix.
- installing guix on a foreign distro
- installing guixsd
- using guix: installing, upgrading and removing packages
- guix pull
- MAYBE guix gc
- Developers (not guix, but general devs)
- environments vs profiles
- developing on guixsd
- "getting back to work" when something goes wrong
- roll-back profile, system-profile, guix