
Warning: Undefined array key "media" in /volume1/web/wiki/feed.php on line 235

Warning: Undefined array key "media" in /volume1/web/wiki/feed.php on line 274

Warning: Undefined array key "media" in /volume1/web/wiki/feed.php on line 385

Warning: Undefined array key "media" in /volume1/web/wiki/feed.php on line 235

Warning: Undefined array key "media" in /volume1/web/wiki/feed.php on line 274

Warning: Undefined array key "media" in /volume1/web/wiki/feed.php on line 385
<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="http://live.spdns.org/wiki/lib/exe/css.php?s=feed" type="text/css"?>
<rss version="2.0">
    <channel xmlns:g="http://base.google.com/ns/1.0">
        <title>move IT Home Base</title>
        <description></description>
        <link>http://live.spdns.org/wiki/</link>
        <lastBuildDate>Sat, 04 Apr 2026 10:54:12 +0000</lastBuildDate>
        <generator>FeedCreator 1.8</generator>
        <image>
            <url>http://live.spdns.org/wiki/lib/tpl/peanutbutter2/images/favicon.ico</url>
            <title>move IT Home Base</title>
            <link>http://live.spdns.org/wiki/</link>
        </image>
        <item>
            <title>Jitsi</title>
            <link>http://live.spdns.org/wiki/anleitungen/software/jitsi?do=revisions&amp;rev=1632380719</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;jitsi&quot;&gt;Jitsi&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Jitsi ist eine Sammlung freier Software für IP-Telefonie, Videokonferenzen und Instant Messaging. Der Ursprung war ein Java-basierter Messenger-Client für XMPP und weitere Protokolle, jetzt Jitsi Desktop genannt.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;https://meet.jit.si&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://meet.jit.si&quot; rel=&quot;ugc nofollow noopener&quot;&gt;https://meet.jit.si&lt;/a&gt;
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Jitsi&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;jitsi&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:1,&amp;quot;range&amp;quot;:&amp;quot;1-258&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit2&quot; id=&quot;jitsi_meet-server_unter_linux_ubuntu_2004_installieren&quot;&gt;Jitsi Meet-Server unter Linux Ubuntu 20.04 installieren&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;
Keep it simple Installation
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;code&gt;sudo su&lt;/code&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;code&gt;apt update &amp;amp;&amp;amp; apt upgrade&lt;/code&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;code&gt;hostnamectl set-hostname meet.deinserver.xyz&lt;/code&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;code&gt;apt install software-properties-common&lt;/code&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;code&gt;apt-add-repository universe&lt;/code&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;code&gt;apt install apt-transport-https&lt;/code&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;code&gt;curl &lt;a href=&quot;https://download.jitsi.org/jitsi-key.gpg.key&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://download.jitsi.org/jitsi-key.gpg.key&quot; rel=&quot;ugc nofollow noopener&quot;&gt;https://download.jitsi.org/jitsi-key.gpg.key&lt;/a&gt; | sh -c &amp;#039;gpg –dearmor &amp;gt; /usr/share/keyrings/jitsi-keyring.gpg&lt;/code&gt;&amp;#039;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;code&gt;echo &amp;#039;deb [signed-by=/usr/share/keyrings/jitsi-keyring.gpg] &lt;a href=&quot;https://download.jitsi.org&quot; class=&quot;urlextern&quot; target=&quot;_blank&quot; title=&quot;https://download.jitsi.org&quot; rel=&quot;ugc nofollow noopener&quot;&gt;https://download.jitsi.org&lt;/a&gt; stable/&amp;#039; | tee /etc/apt/sources.list.d/jitsi-stable.list &amp;gt; /dev/null&lt;/code&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;code&gt;apt update&lt;/code&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;code&gt;apt -y install jitsi-meet&lt;/code&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;code&gt;/usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh&lt;/code&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Jitsi Meet-Server unter Linux Ubuntu 20.04 installieren&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;jitsi_meet-server_unter_linux_ubuntu_2004_installieren&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:2,&amp;quot;range&amp;quot;:&amp;quot;259-988&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit3&quot; id=&quot;offene_fragen&quot;&gt;Offene Fragen&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; muss der lokale Hostname zwingend gesetzt werden?&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Offene Fragen&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;offene_fragen&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:3,&amp;quot;range&amp;quot;:&amp;quot;989-1070&amp;quot;} --&gt;
&lt;h2 class=&quot;sectionedit4&quot; id=&quot;ports&quot;&gt;Ports&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; 80 TCP (nur für die Aushandlung des Let´s Encrypt Zertifikats)&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; 443 TCP&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; 10000 UDP (Video)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- EDIT{&amp;quot;target&amp;quot;:&amp;quot;section&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;Ports&amp;quot;,&amp;quot;hid&amp;quot;:&amp;quot;ports&amp;quot;,&amp;quot;codeblockOffset&amp;quot;:0,&amp;quot;secid&amp;quot;:4,&amp;quot;range&amp;quot;:&amp;quot;1071-&amp;quot;} --&gt;</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>anleitungen:software</category>
            <pubDate>Thu, 23 Sep 2021 09:05:19 +0000</pubDate>
        </item>
        <item>
            <title>PeerTube - Menu Enhancer</title>
            <link>http://live.spdns.org/wiki/anleitungen/software/peertube/peertube_-_menu_enhancer?do=revisions&amp;rev=1659082704</link>
            <description>
&lt;h1 class=&quot;sectionedit1&quot; id=&quot;peertube_-_menu_enhancer&quot;&gt;PeerTube - Menu Enhancer&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;
&lt;pre class=&quot;code&quot;&gt;/** === LINKS ===
 * Simple add your links into the MENU_LINKS array following the example format
 * It will be added to the menu in the same order as you defined it
 */

/** === SEPARATOR ===
 * Like our example, use {name: &amp;quot;separator&amp;quot;} to add a separator to the menu
 */

/** === ICONS ===
 * You can use https://css.gg, icons are automatically imported if start with gg-*** (Ex: gg-game).
 * Else, you can use https://fontawesome.com/icons/ or any other custom icon library.
 * Just import the CSS manually.
 **/

// EDIT HERE
var MENU_LINKS = [
    {
        name: &amp;quot;Gaming&amp;quot;,
        url: &amp;quot;/videos/recently-added?languageOneOf=fr&amp;amp;categoryOneOf=7&amp;amp;c=true&amp;amp;s=2&amp;quot;,
        icon: &amp;quot;gg-games&amp;quot;,
    },
    {
        name: &amp;quot;Kid&amp;#039;s&amp;quot;,
        url: &amp;quot;/videos/recently-added?languageOneOf=fr&amp;amp;categoryOneOf=17&amp;amp;c=true&amp;amp;s=2&amp;quot;,
        icon: &amp;quot;gg-girl&amp;quot;,
    },
    { name: &amp;quot;separator&amp;quot; },
    {
        name: &amp;quot;Pewtix - Dicutez de l\&amp;#039;actualité&amp;quot;,
        url: &amp;quot;https://pewtix.com/&amp;quot;,
        target: &amp;quot;_blank&amp;quot;,
        icon: &amp;quot;gg-twitter&amp;quot;
    },
    {
        name: &amp;quot;Pixel - Partagez vos photos&amp;quot;,
        url: &amp;quot;https://pixel.orion-hub.fr/&amp;quot;,
        target: &amp;quot;_blank&amp;quot;,
        icon: &amp;quot;gg-instagram&amp;quot;
    },
    { name: &amp;quot;separator&amp;quot; },
    {
        name: &amp;quot;Liberapay - Faire un Don&amp;quot;,
        url: &amp;quot;https://liberapay.com/bthommy/&amp;quot;,
        target: &amp;quot;_blank&amp;quot;,
        icon: &amp;quot;gg-coffee&amp;quot;
    }
]

// END EDIT -- DO NOT TOUCH AFTER

/**
 * Wait for the DOM to be loaded
 * Then, init the custom menu
 */
window.addEventListener(&amp;quot;DOMContentLoaded&amp;quot;, (event) =&amp;gt; {
    const wait__menuCustomInterval = setInterval(() =&amp;gt; {
        let firstLink = document.querySelectorAll(
            &amp;#039;.menu-block a[href=&amp;quot;/videos/overview&amp;quot;]&amp;#039;
        );
        if (firstLink.length &amp;gt; 0) {
            clearInterval(wait__menuCustomInterval);
            initCustomMenu(firstLink[0]);
        }
    }, 500);
});

/**
 * Init the custom menu
 * @param {HTMLElement} firstLink The first link of the menu
 * @returns {void}
 */
function initCustomMenu(linkTemplate) {
    //Parent node which contains &amp;#039;Videos&amp;#039; title and the 3 links (&amp;#039;Découvrir&amp;#039;, &amp;#039;Tendances&amp;#039;, &amp;#039;Récemment ajoutées&amp;#039;)
    const menuContainer = linkTemplate.parentNode;
    // Define head element
    const head = document.head;

    // Define and ADD custom CSS
    const customCSS = `
        hr {
          background-color: #ccc !important;
        }
        
        a.menu-link i {
          margin-right: 16px;
        }
    `;
    const style = document.createElement(&amp;quot;style&amp;quot;);
    style.type = &amp;quot;text/css&amp;quot;;
    style.appendChild(document.createTextNode(customCSS));
    head.appendChild(style);

    // Define separator
    const separator = document.createElement(&amp;quot;hr&amp;quot;);
    separator.setAttribute(&amp;quot;width&amp;quot;, &amp;quot;80%&amp;quot;);
    separator.setAttribute(&amp;quot;color&amp;quot;, &amp;quot;white&amp;quot;);
    separator.setAttribute(&amp;quot;background-color&amp;quot;, &amp;quot;white&amp;quot;);
    separator.setAttribute(&amp;quot;height&amp;quot;, &amp;quot;1px&amp;quot;);
    separator.setAttribute(&amp;quot;visible&amp;quot;, &amp;quot;true&amp;quot;);

    //Adding links
    MENU_LINKS.forEach((link) =&amp;gt; {
        if (link.name === &amp;quot;separator&amp;quot;) {
            // Adding separator
            menuContainer.appendChild(separator.cloneNode());
        } else {
            // Adding link

            // Manage icon (automatically import if start with gg-*** from https://css.gg)
            let icon = &amp;quot;&amp;quot;;
            if (link.icon.startsWith(&amp;quot;gg-&amp;quot;)) {
                icon = `&amp;lt;i class=&amp;quot;${link.icon}&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;`;
                const ggName = link.icon.replace(&amp;quot;gg-&amp;quot;, &amp;quot;&amp;quot;);

                // Inject css in the head
                const cssLink = document.createElement(&amp;quot;link&amp;quot;);
                cssLink.type = &amp;quot;text/css&amp;quot;;
                cssLink.rel = &amp;quot;stylesheet&amp;quot;;
                cssLink.href = `https://css.gg/${ggName}.css`;
                head.appendChild(cssLink);
            } else {
                icon = `&amp;lt;i class=&amp;quot;${link.icon}&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;`;
            }

            // Create link
            const linkNode = linkTemplate.cloneNode();
            linkNode.setAttribute(&amp;quot;href&amp;quot;, link.url);
            linkNode.setAttribute(&amp;quot;routerLink&amp;quot;, link.url);
            linkNode.setAttribute(&amp;quot;target&amp;quot;, (link.target || &amp;quot;_self&amp;quot;));
            linkNode.innerHTML = icon + &amp;quot; &amp;quot; + link.name;

            // Add link to the menu
            menuContainer.appendChild(linkNode);
        }
    });
}&lt;/pre&gt;

&lt;/div&gt;
</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>anleitungen:software:peertube</category>
            <pubDate>Fri, 29 Jul 2022 10:18:24 +0000</pubDate>
        </item>
    </channel>
</rss>
