<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Blogs on law@deb</title><link>https://alvinlaw.codeberg.page/</link><image><url>
https://alvinlaw.codeberg.page/favicon.ico</url></image><description>Recent content on law@deb</description><language>en</language><lastBuildDate>Sun, 05 Apr 2026 11:40:21 +0000</lastBuildDate><atom:link href="https://alvinlaw.codeberg.page/" rel="self" type="application/octet-stream"/><item><title>Download YouTube Contents</title><link>https://alvinlaw.codeberg.page/cheat-sheets/download-youtube-contents/</link><pubDate>Sun, 05 Apr 2026 11:40:21 +0000</pubDate><guid>https://alvinlaw.codeberg.page/cheat-sheets/download-youtube-contents/</guid><description>&lt;h2 id="create-python-virtual-environment">Create python virtual environment&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">python3 -m venv yt
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">source&lt;/span> yt/bin/activate
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="install-yt-dlp">Install yt-dlp&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">pip3 install yt-dlp
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="show-available-formats">Show available formats&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">yt-dlp -F &lt;span class="o">[&lt;/span>link&lt;span class="o">]&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="download-the-format">Download the format&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">yt-dlp -f &lt;span class="o">[&lt;/span>id&lt;span class="o">]&lt;/span> &lt;span class="o">[&lt;/span>link&lt;span class="o">]&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>For example:&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">yt-dlp -f &lt;span class="m">242&lt;/span> https://www.youtube.com/watch?v&lt;span class="o">=&lt;/span>example-link
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="download-audio-only">Download audio only&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">yt-dlp -x --audio-quality &lt;span class="m">0&lt;/span> &lt;span class="o">[&lt;/span>link&lt;span class="o">]&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item><item><title>Use FFmpeg to Edit Videos</title><link>https://alvinlaw.codeberg.page/cheat-sheets/ffmpeg/</link><pubDate>Thu, 02 Apr 2026 08:22:18 +0000</pubDate><guid>https://alvinlaw.codeberg.page/cheat-sheets/ffmpeg/</guid><description>&lt;h2 id="connect-videos">Connect videos&lt;/h2>
&lt;p>Run the following command to connect multiple videos together.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">&lt;span class="nb">echo&lt;/span> &lt;span class="s2">&amp;#34;file &amp;#39;video1.mp4&amp;#39;&amp;#34;&lt;/span> &amp;gt; video_list.txt
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">echo&lt;/span> &lt;span class="s2">&amp;#34;file &amp;#39;video2.mp4&amp;#39;&amp;#34;&lt;/span> &amp;gt;&amp;gt; video_list.txt
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">echo&lt;/span> &lt;span class="s2">&amp;#34;file &amp;#39;video3.mp4&amp;#39;&amp;#34;&lt;/span> &amp;gt;&amp;gt; video_list.txt
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">ffmpeg -f concat -safe &lt;span class="m">0&lt;/span> -i video_list.txt -c copy output.mp4
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>This is extremely fast and there is no quality loss, because there is no transcoding.&lt;/p>
&lt;h2 id="remove-audio">Remove audio&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">ffmpeg -i input.mp4 -an output.mp4
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="trim-videos">Trim videos&lt;/h2>
&lt;p>Trim video from 1:30 to 2:45.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">ffmpeg -i input.mp4 -ss 00:01:30 -to 00:02:45 -c copy output.mp4
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Trim video from 1:30, to 60s afterwards.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">ffmpeg -i input.mp4 -ss 00:01:30 -t &lt;span class="m">60&lt;/span> -c copy output.mp4
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="compress-videos">Compress videos&lt;/h2>
&lt;p>Choose a crf value from 18 to 28, with larger number = more compression.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">ffmpeg -i input.mp4 -vcodec libx265 -crf &lt;span class="m">28&lt;/span> output.mp4
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Change frame rate to 24 fps.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">ffmpeg -i input.mp4 -r &lt;span class="m">24&lt;/span> -c:a copy output.mp4
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Resize video to 1280:720&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">ffmpeg -i input.mp4 -vf &lt;span class="nv">scale&lt;/span>&lt;span class="o">=&lt;/span>1280:720 -c:a copy output.mp4
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item><item><title>Stop Using PowerPoint</title><link>https://alvinlaw.codeberg.page/blogs/latex-beamer/</link><pubDate>Thu, 26 Mar 2026 10:10:05 +0000</pubDate><guid>https://alvinlaw.codeberg.page/blogs/latex-beamer/</guid><description>&lt;p>I have seen enough people going up on stage, logging in to their gmail account to open up their PowerPoint or Google slides, only to find out that opening it up on lecture hall computer completely messes things up. You need to learn latex beamer, it will save you a lot of headache, and it is not even that hard. By the end of this tutorial, you will be able to understand how to create this template slides.&lt;/p>

&lt;iframe 
src="https://alvinlaw.codeberg.page/assets/pdf/blogs/latex-beamer/beamer.pdf" 
style="width:100%; aspect-ratio:16/11; border:none;">
&lt;/iframe>

&lt;h2 id="installation">Installation&lt;/h2>
&lt;p>On Debian based distros, install the full version with the following command.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">sudo apt install texlive-full
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>This will install 8GB of packages! Or you may install only the most useful packages.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">sudo apt install biber texlive texlive-science &lt;span class="se">\
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="se">&lt;/span> texlive-bibtex-extra texlive-latex-extra &lt;span class="se">\
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="se">&lt;/span> texlive-pictures texlive-publishers &lt;span class="se">\
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="se">&lt;/span> texlive-fonts-extra
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>For other distros, you will need to look up the package name.&lt;/p>
&lt;h2 id="your-first-latex-slides">Your first latex slides&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-latex" data-lang="latex">&lt;span class="line">&lt;span class="cl">&lt;span class="k">\documentclass&lt;/span>&lt;span class="na">[aspectratio=169]&lt;/span>&lt;span class="nb">{&lt;/span>beamer&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\usetheme&lt;/span>&lt;span class="nb">{&lt;/span>Madrid&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\title&lt;/span>&lt;span class="nb">{&lt;/span>Presentation Title&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\author&lt;/span>&lt;span class="nb">{&lt;/span>Your Name&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\institute&lt;/span>&lt;span class="nb">{&lt;/span>Your Institute&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\date&lt;/span>&lt;span class="nb">{&lt;/span>&lt;span class="k">\today&lt;/span>&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>document&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\titlepage&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>document&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Here, copy your first latex slides, paste it in a file named &lt;code>beamer.tex&lt;/code>. Madrid is just a theme I like, you may find different themes &lt;a href="https://deic.uab.es/~iblanes/beamer_gallery/index_by_theme.html" target="_blank">here&lt;/a>. Then run the following command.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">pdflatex beamer.tex
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>A file called &lt;code>beamer.pdf&lt;/code> will be generated. To remove the footer and the icons, add the following code to the preamble&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-latex" data-lang="latex">&lt;span class="line">&lt;span class="cl">&lt;span class="k">\setbeamertemplate&lt;/span>&lt;span class="nb">{&lt;/span>footline&lt;span class="nb">}{}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\setbeamertemplate&lt;/span>&lt;span class="nb">{&lt;/span>navigation symbols&lt;span class="nb">}{}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>This is the most basic setup with latex beamer. Each pages are enclosed by the &lt;code>\begin{frame}&lt;/code> and &lt;code>\end{frame}&lt;/code> tag, like the title page. Now, add the following code to create another page.&lt;/p>
&lt;h2 id="multilingual-support">Multilingual support&lt;/h2>
&lt;p>Let&amp;rsquo;s kick this off with multilingual support, if you only understand English, I am sorry for you bro, just skip to &lt;a href="https://alvinlaw.codeberg.page/blogs/latex-beamer/#lists">next section&lt;/a>. You will need to install a Unicode supported typesetting engine, and a language pack. I am going to show how to add Chinese characters as an example.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">sudo apt install texlive-xetex texlive-lang-chinese
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Add the following code to the preamble.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-latex" data-lang="latex">&lt;span class="line">&lt;span class="cl">&lt;span class="k">\usepackage&lt;/span>&lt;span class="nb">{&lt;/span>xeCJK&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\setCJKmainfont&lt;/span>&lt;span class="nb">{&lt;/span>Droid Sans Fallback&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>To find the available fonts on your system, run the following command.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">fc-list :lang&lt;span class="o">=&lt;/span>zh
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Then, you will be able to add Chinese characters anywhere!&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-latex" data-lang="latex">&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}{&lt;/span>Multilingual support 支持多種語言&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">在 beamer 展示其他語言很容易啊。
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">It&amp;#39;s easy to show other languages in beamer.
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>To compile it to pdf, you will need to use xetex. Run the following command.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">xelatex beamer.tex
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>If you are using Chinese characters to proceed, replace all of &lt;code>pdflatex&lt;/code> command by &lt;code>xelatex&lt;/code> in the reset of the tutorial.&lt;/p>
&lt;h2 id="lists">Lists&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-latex" data-lang="latex">&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}{&lt;/span>Lists&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>itemize&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\item&lt;/span> Point 1
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\item&lt;/span> Point 2
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\item&lt;/span> Point 3
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>itemize&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>enumerate&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\item&lt;/span> Number 1
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\item&lt;/span> Number 2
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\item&lt;/span> Number 3
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>enumerate&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>You may specify the title of the page at the end of &lt;code>\begin{frame}&lt;/code>. Create bullet points with &lt;code>itemize&lt;/code>, and numbered list with &lt;code>enumerate&lt;/code>.&lt;/p>
&lt;h2 id="maths-equations">Maths equations&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-latex" data-lang="latex">&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}{&lt;/span>Maths equations&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>block&lt;span class="nb">}{&lt;/span>Important equation&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="sb">$$&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\int&lt;/span>&lt;span class="nb">_&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">^e &lt;/span>&lt;span class="nv">\frac&lt;/span>&lt;span class="nb">{&lt;/span>&lt;span class="nv">\mathrm&lt;/span>&lt;span class="nb">{d}x}{x} &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="s">$$&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>block&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>alertblock&lt;span class="nb">}{&lt;/span>Even more important equation&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="sb">$$&lt;/span>&lt;span class="nb"> e &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\sum&lt;/span>&lt;span class="nb">_{n&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="m">0&lt;/span>&lt;span class="nb">}^&lt;/span>&lt;span class="nv">\infty&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\frac&lt;/span>&lt;span class="nb">{&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">}{n&lt;/span>&lt;span class="o">!&lt;/span>&lt;span class="nb">} &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\frac&lt;/span>&lt;span class="nb">{&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">}{&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">} &lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\frac&lt;/span>&lt;span class="nb">{&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">}{&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\cdot&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="m">2&lt;/span>&lt;span class="nb">} &lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\frac&lt;/span>&lt;span class="nb">{&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">}{&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\cdot&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="m">2&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\cdot&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="m">3&lt;/span>&lt;span class="nb">} &lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\cdots&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="s">$$&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>alertblock&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>In latex beamer, writing mathematics equations is automatically supported. You can just copy your equations from latex report to here! Enclose the equation with &lt;code>block&lt;/code> or &lt;code>alertblock&lt;/code> to make it looks important.&lt;/p>
&lt;h2 id="pictures">Pictures&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-latex" data-lang="latex">&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}{&lt;/span>Pictures&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>figure&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\centering&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\includegraphics&lt;/span>&lt;span class="na">[width=0.5\textwidth]&lt;/span>&lt;span class="nb">{&lt;/span>./latex.jpeg&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\caption&lt;/span>&lt;span class="nb">{&lt;/span>LaTeX logo&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>figure&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>figure&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\centering&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\includegraphics&lt;/span>&lt;span class="na">[trim={1.5cm 3cm 3cm 1.2cm}, clip, width=0.5\textwidth]&lt;/span>&lt;span class="nb">{&lt;/span>./latex.jpeg&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\caption&lt;/span>&lt;span class="nb">{&lt;/span>Cropped LaTeX logo&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>figure&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>To add a picture, use the above template and change the relative path of the picture. It is also useful to crop the picture in place, adding &lt;code>trim={1.5cm 3cm 3cm 1.2cm}, clip&lt;/code> can crop the image, where the arguments specify cropping from left, bottom, right, and top respectively.&lt;/p>
&lt;h2 id="reference">Reference&lt;/h2>
&lt;p>To add references, create a file called &lt;code>citation.bib&lt;/code>, and paste the bibtex citation in it, it can usually be found on google scholar under cite. Here is a sample.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bibtex" data-lang="bibtex">&lt;span class="line">&lt;span class="cl">&lt;span class="nc">@article&lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="nl">dummy&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="na">title&lt;/span>&lt;span class="p">=&lt;/span>&lt;span class="s">{A Study on Generic Topics Drives Significant Findings}&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="na">author&lt;/span>&lt;span class="p">=&lt;/span>&lt;span class="s">{Doe, John and Smith, Jane and Others, Anonymous}&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="na">journal&lt;/span>&lt;span class="p">=&lt;/span>&lt;span class="s">{Journal of Generic Research}&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="na">pages&lt;/span>&lt;span class="p">=&lt;/span>&lt;span class="s">{1--10}&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="na">year&lt;/span>&lt;span class="p">=&lt;/span>&lt;span class="s">{2024}&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="na">publisher&lt;/span>&lt;span class="p">=&lt;/span>&lt;span class="s">{Generic Publishing Group}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Then add the following code to the preamble.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-latex" data-lang="latex">&lt;span class="line">&lt;span class="cl">&lt;span class="k">\usepackage&lt;/span>&lt;span class="na">[backend=biber, style=vancouver]&lt;/span>&lt;span class="nb">{&lt;/span>biblatex&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\addbibresource&lt;/span>&lt;span class="nb">{&lt;/span>citation.bib&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Add the following frame as the last slide.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-latex" data-lang="latex">&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}{&lt;/span>References&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\printbibliography&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Lastly, cite this in the slides. Here is an example.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-latex" data-lang="latex">&lt;span class="line">&lt;span class="cl">&lt;span class="k">\item&lt;/span> Point 1 &lt;span class="k">\cite&lt;/span>&lt;span class="nb">{&lt;/span>dummy&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>To render the references in the slides, run the following command to generate &lt;code>beamer.aux&lt;/code> which allows you to inject references to it.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">pdflatex beamer.tex
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Then, run the following command to generate &lt;code>beamer.bbl&lt;/code>.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">biber beamer
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Run &lt;code>pdflatex beamer.tex&lt;/code> 2 more times to first generate the references page, and then the inline citation. Once you have &lt;code>beamer.aux&lt;/code>, you will only need to first run &lt;code>biber beamer&lt;/code> and then &lt;code>pdflatex beamer.tex&lt;/code> to compile it.&lt;/p>
&lt;h2 id="full-sample">Full sample&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-latex" data-lang="latex">&lt;span class="line">&lt;span class="cl">&lt;span class="k">\documentclass&lt;/span>&lt;span class="na">[aspectratio=169]&lt;/span>&lt;span class="nb">{&lt;/span>beamer&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\usetheme&lt;/span>&lt;span class="nb">{&lt;/span>Madrid&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\setbeamertemplate&lt;/span>&lt;span class="nb">{&lt;/span>footline&lt;span class="nb">}{}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\setbeamertemplate&lt;/span>&lt;span class="nb">{&lt;/span>navigation symbols&lt;span class="nb">}{}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\usepackage&lt;/span>&lt;span class="na">[backend=biber, style=vancouver]&lt;/span>&lt;span class="nb">{&lt;/span>biblatex&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\addbibresource&lt;/span>&lt;span class="nb">{&lt;/span>citation.bib&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\title&lt;/span>&lt;span class="nb">{&lt;/span>Presentation Title&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\author&lt;/span>&lt;span class="nb">{&lt;/span>Your Name&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\institute&lt;/span>&lt;span class="nb">{&lt;/span>Your Institute&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\date&lt;/span>&lt;span class="nb">{&lt;/span>&lt;span class="k">\today&lt;/span>&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>document&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\titlepage&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}{&lt;/span>Lists&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>itemize&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\item&lt;/span> Point 1 &lt;span class="k">\cite&lt;/span>&lt;span class="nb">{&lt;/span>dummy&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\item&lt;/span> Point 2
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\item&lt;/span> Point 3
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>itemize&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>enumerate&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\item&lt;/span> Number 1
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\item&lt;/span> Number 2
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\item&lt;/span> Number 3
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>enumerate&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}{&lt;/span>Maths equations&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>block&lt;span class="nb">}{&lt;/span>Important equation&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="sb">$$&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\int&lt;/span>&lt;span class="nb">_&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">^e &lt;/span>&lt;span class="nv">\frac&lt;/span>&lt;span class="nb">{&lt;/span>&lt;span class="nv">\mathrm&lt;/span>&lt;span class="nb">{d}x}{x} &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="s">$$&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>block&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>alertblock&lt;span class="nb">}{&lt;/span>Even more important equation&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="sb">$$&lt;/span>&lt;span class="nb"> e &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\sum&lt;/span>&lt;span class="nb">_{n&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="m">0&lt;/span>&lt;span class="nb">}^&lt;/span>&lt;span class="nv">\infty&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\frac&lt;/span>&lt;span class="nb">{&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">}{n&lt;/span>&lt;span class="o">!&lt;/span>&lt;span class="nb">} &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\frac&lt;/span>&lt;span class="nb">{&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">}{&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">} &lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\frac&lt;/span>&lt;span class="nb">{&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">}{&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\cdot&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="m">2&lt;/span>&lt;span class="nb">} &lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\frac&lt;/span>&lt;span class="nb">{&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">}{&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\cdot&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="m">2&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\cdot&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="m">3&lt;/span>&lt;span class="nb">} &lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\cdots&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="s">$$&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>alertblock&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}{&lt;/span>Pictures&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>figure&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\centering&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\includegraphics&lt;/span>&lt;span class="na">[width=0.5\textwidth]&lt;/span>&lt;span class="nb">{&lt;/span>./latex.jpeg&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\caption&lt;/span>&lt;span class="nb">{&lt;/span>LaTeX logo&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>figure&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>figure&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\centering&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\includegraphics&lt;/span>&lt;span class="na">[trim={1.5cm 3cm 3cm 1.2cm}, clip, width=0.5\textwidth]&lt;/span>&lt;span class="nb">{&lt;/span>./latex.jpeg&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\caption&lt;/span>&lt;span class="nb">{&lt;/span>Cropped LaTeX logo&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>figure&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\begin&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}{&lt;/span>References&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\printbibliography&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>frame&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">\end&lt;/span>&lt;span class="nb">{&lt;/span>document&lt;span class="nb">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item><item><title>Creating Disposable VM with KVM</title><link>https://alvinlaw.codeberg.page/blogs/disposable-kvm/</link><pubDate>Sun, 15 Mar 2026 14:38:23 +0000</pubDate><guid>https://alvinlaw.codeberg.page/blogs/disposable-kvm/</guid><description>&lt;h2 id="use-case">Use case&lt;/h2>
&lt;p>Every changes in disposable vm (including changes in the root directory) will be gone in the next boot. Therefore, it is very useful when you want to test new software (potentially buggy) and don&amp;rsquo;t want to mess with your actual computer.&lt;/p>
&lt;h2 id="creating-disposable-vm">Creating disposable vm&lt;/h2>
&lt;h3 id="template-vm">Template vm&lt;/h3>
&lt;p>First, create a vm normally, this serves as a base of the disposable vm. Install software you want to use, and configure them to your preference. The software and the configurations will be available every time you boot up the disposable vm and are immutable from the disposable vm.&lt;/p>
&lt;h3 id="disposable-vm">Disposable vm&lt;/h3>
&lt;p>Open up virt manager, right click on the template vm, then click clone. In the pop-up window, uncheck cloning storage. After this, go to the edit menu, and click preferences. Enable XML editing in the pop-up window.&lt;/p>
&lt;p>&lt;img alt="add transient tag" src="https://alvinlaw.codeberg.page/assets/images/blogs/disposable-kvm/transient.webp">&lt;/p>
&lt;p>Open up the details page of the disposable vm in view menu. Under virtual disk, open XML tab, and add &lt;code>&amp;lt;transient/&amp;gt;&lt;/code>. Voilà! This is it, you can now turn on the disposable vm and try all the fun stuff like &lt;code>sudo rm /usr/bin/rm&lt;/code> without any consequences.&lt;/p>
&lt;h3 id="vm-without-internet-connection">vm without internet connection&lt;/h3>
&lt;p>&lt;img alt="remove network hardware" src="https://alvinlaw.codeberg.page/assets/images/blogs/disposable-kvm/network.webp">&lt;/p>
&lt;p>Sometimes, you may want to write some sensitive files to your computer, and you may not want the computer to connect to internet at all. This can also be easily achieved by removing the internet hardware of the vm. Now, when you turn on this vm, you literally can&amp;rsquo;t connect to internet in any way.&lt;/p>
&lt;h2 id="updating-disposable-vm">Updating disposable vm&lt;/h2>
&lt;p>Updating the disposable vm is very easy. Just update the template vm, all the changes will be available on the disposable vm. Remember to keep your footprint minimal in template vm, and do all the testings in the disposable vm.&lt;/p>

&lt;iframe id="odysee-iframe" style="width:100%; aspect-ratio:16 / 9;" src="https://odysee.com/%24/embed/%40alvinlaw%3Ad%2FCreating-Disposable-VM-with-KVM%3A3?r=FT5FkEugTKRFmcw4P5oB5Ud9KA9jFkj4" allowfullscreen>&lt;/iframe>
</description></item></channel></rss>