Compare commits

...

10 Commits

Author SHA1 Message Date
3aab905a9e add proxmox.png 2023-06-26 06:46:45 +02:00
66cef5f4bc add example flakes 2023-06-25 13:15:18 +02:00
9e693f2317 flake_controller: update mockup, add export 2023-06-25 13:14:47 +02:00
27b218c21a update figures 2023-06-25 17:08:01 +07:00
989b57d910 update figures 2023-06-25 16:05:09 +07:00
0da3570dcf update figures 2023-06-25 15:41:47 +07:00
56067d25f4 add design overview 2023-06-24 16:56:36 +07:00
b03ac00891 update 2023-06-24 16:35:44 +07:00
ada8f93ed1 update vm-controller 2023-06-24 11:27:30 +02:00
c4701a0d92 add flake_controller_new mockup (made with pencil) 2023-06-24 11:01:47 +02:00
10 changed files with 213 additions and 132 deletions

15
configs.json Normal file
View File

@ -0,0 +1,15 @@
{
"default": {
"adminMode": "local",
"networkLayer": "yggdrasil",
"applications": {
"syncthing": {
"enable": true,
"sharedFolders": [ "/shared/docs" ]
},
"mumbleClient": {
"server": "mumble.hiboss"
}
}
}
}

View File

@ -1,111 +1,115 @@
<mxfile host="app.diagrams.net" modified="2023-06-24T07:47:48.075Z" agent="Mozilla/5.0 (X11; Linux x86_64; rv:107.0) Gecko/20100101 Firefox/107.0" etag="qAqa23MTUl16LyZfzL1A" version="21.5.0" type="device">
<mxfile host="app.diagrams.net" modified="2023-06-25T09:03:33.755Z" agent="Mozilla/5.0 (X11; Linux x86_64; rv:107.0) Gecko/20100101 Firefox/107.0" etag="GcP6LQXL6aqZJle39DKa" version="21.5.0" type="device">
<diagram name="Page-1" id="Page-1">
<mxGraphModel dx="1040" dy="953" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
<mxGraphModel dx="1168" dy="781" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" value="Connector" parent="0" />
<mxCell id="r0mgfz6IdKgSaTeHQ_le-33" value="&lt;font style=&quot;font-size: 24px;&quot;&gt;VPN Mesh network&lt;/font&gt;" style="ellipse;shape=cloud;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="260" y="480" width="320" height="240" as="geometry" />
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-42" value="" style="group" vertex="1" connectable="0" parent="1">
<mxGeometry x="591" y="788" width="709" height="251" as="geometry" />
</mxCell>
<mxCell id="b6oYJSDJwjR9OZKanJwb-46" value="" style="rounded=1;whiteSpace=wrap;html=1;hachureGap=4;pointerEvents=0;strokeWidth=2;" parent="r0mgfz6IdKgSaTeHQ_le-42" vertex="1">
<mxGeometry x="119" width="590" height="251" as="geometry" />
</mxCell>
<mxCell id="5" value="" style="verticalAlign=middle;align=center;vsdxID=5;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeWidth=2;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="r0mgfz6IdKgSaTeHQ_le-42" vertex="1">
<mxGeometry x="149" y="40" width="320" height="172" as="geometry" />
</mxCell>
<mxCell id="14" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 22px; font-family: &amp;quot;calibri&amp;quot;; color: rgb(0, 0, 0); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;&lt;font style=&quot;font-size: 28px&quot;&gt;VM2&lt;br&gt;&lt;/font&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=19;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="r0mgfz6IdKgSaTeHQ_le-42" vertex="1">
<mxGeometry y="152" width="386" height="53" as="geometry" />
</mxCell>
<mxCell id="15" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: Calibri; color: rgb(0, 0, 0); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;Server&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=20;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="r0mgfz6IdKgSaTeHQ_le-42" vertex="1">
<mxGeometry x="535" y="152" width="125" height="53" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-33" style="vsdxID=12;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;" parent="r0mgfz6IdKgSaTeHQ_le-42" vertex="1">
<mxGeometry x="189" y="63" width="260" height="70" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-34" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: &amp;quot;calibri&amp;quot;; color: rgb(255, 255, 255); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;Mumble-Server&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=25;fillColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="r0mgfz6IdKgSaTeHQ_le-42" vertex="1">
<mxGeometry x="204.5" y="79.5" width="234.5" height="37" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-36" style="vsdxID=14;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;" parent="r0mgfz6IdKgSaTeHQ_le-42" vertex="1">
<mxGeometry x="499" y="40" width="203" height="76" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-37" value="&lt;div&gt;&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: &amp;quot;calibri&amp;quot;; direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;VM-&lt;br&gt;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: &amp;quot;calibri&amp;quot;; direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;Controller&lt;/font&gt;&lt;/div&gt;" style="verticalAlign=middle;align=center;vsdxID=32;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#FFFFFF;" parent="r0mgfz6IdKgSaTeHQ_le-42" vertex="1">
<mxGeometry x="536" y="51.5" width="131" height="53" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-38" style="vsdxID=48;edgeStyle=none;startArrow=none;endArrow=none;startSize=5;endSize=5;strokeWidth=3;strokeColor=#000000;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#ffffff;rounded=0;entryX=0.995;entryY=0.269;entryDx=0;entryDy=0;entryPerimeter=0;" parent="r0mgfz6IdKgSaTeHQ_le-42" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="499" y="72" as="sourcePoint" />
<mxPoint x="470" y="72" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-43" value="" style="group" vertex="1" connectable="0" parent="1">
<mxGeometry x="710" y="504" width="590" height="251" as="geometry" />
</mxCell>
<mxCell id="b6oYJSDJwjR9OZKanJwb-45" value="" style="rounded=1;whiteSpace=wrap;html=1;hachureGap=4;pointerEvents=0;strokeWidth=2;" parent="r0mgfz6IdKgSaTeHQ_le-43" vertex="1">
<mxGeometry width="590" height="251" as="geometry" />
</mxCell>
<mxCell id="6" style="vsdxID=6;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeWidth=2;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="r0mgfz6IdKgSaTeHQ_le-43" vertex="1">
<mxGeometry x="30" y="29" width="320" height="171" as="geometry" />
</mxCell>
<mxCell id="13" style="vsdxID=14;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;" parent="r0mgfz6IdKgSaTeHQ_le-43" vertex="1">
<mxGeometry x="400" y="36" width="170" height="76" as="geometry" />
</mxCell>
<mxCell id="21" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: &amp;quot;calibri&amp;quot;; color: rgb(0, 0, 0); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;VM1&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=27;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="r0mgfz6IdKgSaTeHQ_le-43" vertex="1">
<mxGeometry x="31" y="135" width="109" height="53" as="geometry" />
</mxCell>
<mxCell id="22" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: &amp;quot;calibri&amp;quot;; color: rgb(0, 0, 0); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;Laptop connected through VM&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=28;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="r0mgfz6IdKgSaTeHQ_le-43" vertex="1">
<mxGeometry x="412" y="161" width="135" height="47" as="geometry" />
</mxCell>
<mxCell id="24" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: &amp;quot;calibri&amp;quot;; direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;VM-Controller&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=32;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#FFFFFF;" parent="r0mgfz6IdKgSaTeHQ_le-43" vertex="1">
<mxGeometry x="416" y="47.5" width="131" height="53" as="geometry" />
</mxCell>
<mxCell id="26" style="vsdxID=48;edgeStyle=none;startArrow=none;endArrow=none;startSize=5;endSize=5;strokeWidth=3;strokeColor=#000000;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#ffffff;rounded=0;entryX=0.995;entryY=0.269;entryDx=0;entryDy=0;entryPerimeter=0;" parent="r0mgfz6IdKgSaTeHQ_le-43" source="13" target="6" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="190" y="77" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-39" style="vsdxID=12;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;" parent="r0mgfz6IdKgSaTeHQ_le-43" vertex="1">
<mxGeometry x="60" y="42" width="260" height="70" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-40" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: &amp;quot;calibri&amp;quot;; color: rgb(255, 255, 255); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;Mumble Client&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=25;fillColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="r0mgfz6IdKgSaTeHQ_le-43" vertex="1">
<mxGeometry x="72.75" y="63.5" width="234.5" height="37" as="geometry" />
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-44" value="" style="group" vertex="1" connectable="0" parent="1">
<mxGeometry x="710" y="220" width="590" height="251" as="geometry" />
<mxCell id="r0mgfz6IdKgSaTeHQ_le-44" value="" style="group" parent="1" vertex="1" connectable="0">
<mxGeometry x="710" y="220" width="590" height="260" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-30" value="" style="rounded=1;whiteSpace=wrap;html=1;hachureGap=4;pointerEvents=0;strokeWidth=2;" parent="r0mgfz6IdKgSaTeHQ_le-44" vertex="1">
<mxGeometry width="590" height="251" as="geometry" />
<mxGeometry width="380" height="260" as="geometry" />
</mxCell>
<mxCell id="ZT00lVDF8hyaAqTCrx0f-22" value="Base-OS" style="vsdxID=12;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;fontSize=28;" vertex="1" parent="r0mgfz6IdKgSaTeHQ_le-44">
<mxGeometry x="60" y="196.81274900398407" width="260" height="36.254980079681275" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-32" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: &amp;quot;calibri&amp;quot;; color: rgb(0, 0, 0); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;Laptop directly connected&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=28;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="r0mgfz6IdKgSaTeHQ_le-44" vertex="1">
<mxGeometry x="413" y="140" width="135" height="99" as="geometry" />
<mxGeometry x="400" y="78.72509960159363" width="135" height="102.54980079681275" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-42" style="vsdxID=12;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;" parent="r0mgfz6IdKgSaTeHQ_le-44" vertex="1">
<mxGeometry x="72.75" y="90" width="260" height="70" as="geometry" />
<mxCell id="ZT00lVDF8hyaAqTCrx0f-23" value="" style="group" vertex="1" connectable="0" parent="r0mgfz6IdKgSaTeHQ_le-44">
<mxGeometry x="60" y="93.74501992031873" width="260" height="72.50996015936255" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-43" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: &amp;quot;calibri&amp;quot;; color: rgb(255, 255, 255); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;Mumble Client&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=25;fillColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="r0mgfz6IdKgSaTeHQ_le-44" vertex="1">
<mxGeometry x="72.75" y="106" width="234.5" height="37" as="geometry" />
<mxCell id="eZtIASL5zvcn_9goES__-42" style="vsdxID=12;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;" parent="ZT00lVDF8hyaAqTCrx0f-23" vertex="1">
<mxGeometry width="260" height="72.50996015936255" as="geometry" />
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-31" value="" style="curved=1;endArrow=classic;html=1;rounded=0;exitX=0;exitY=0.243;exitDx=0;exitDy=0;exitPerimeter=0;entryX=-0.005;entryY=0.49;entryDx=0;entryDy=0;entryPerimeter=0;dashed=1;dashPattern=1 1;strokeWidth=3;startArrow=classic;startFill=1;fillColor=#60a917;strokeColor=#2D7600;" edge="1" parent="1" source="eZtIASL5zvcn_9goES__-33" target="eZtIASL5zvcn_9goES__-39">
<mxCell id="eZtIASL5zvcn_9goES__-43" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: &amp;quot;calibri&amp;quot;; color: rgb(255, 255, 255); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;Mumble Client&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=25;fillColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="ZT00lVDF8hyaAqTCrx0f-23" vertex="1">
<mxGeometry y="16.573705179282868" width="234.5" height="38.32669322709163" as="geometry" />
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-60" value="&lt;div&gt;&lt;font style=&quot;font-size: 24px;&quot;&gt;Different &lt;br&gt;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size: 24px;&quot;&gt;VPN Mesh network&lt;/font&gt;&lt;/div&gt;" style="ellipse;shape=cloud;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="271" y="1027.18" width="320" height="240" as="geometry" />
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-33" value="&lt;font style=&quot;font-size: 24px;&quot;&gt;VPN Mesh network&lt;/font&gt;" style="ellipse;shape=cloud;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="300" y="498.5" width="320" height="240" as="geometry" />
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-67" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.625;entryY=0.2;entryDx=0;entryDy=0;entryPerimeter=0;strokeWidth=3;startArrow=classic;startFill=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;" parent="1" source="eZtIASL5zvcn_9goES__-30" target="r0mgfz6IdKgSaTeHQ_le-33" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="750" y="770" as="sourcePoint" />
<mxPoint x="800" y="720" as="targetPoint" />
<Array as="points">
<mxPoint x="620" y="900" />
<mxPoint x="310" y="650" />
<mxPoint x="640" y="560" />
</Array>
<mxPoint x="750" y="630" as="sourcePoint" />
<mxPoint x="590" y="645" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-34" value="" style="curved=1;endArrow=classic;html=1;rounded=0;entryX=0.012;entryY=0.39;entryDx=0;entryDy=0;entryPerimeter=0;strokeWidth=3;startArrow=classic;startFill=1;fillColor=#008a00;strokeColor=#005700;" edge="1" parent="1" target="eZtIASL5zvcn_9goES__-42">
<mxCell id="22" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: &amp;quot;calibri&amp;quot;; color: rgb(0, 0, 0); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;Laptop connected through VM&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=28;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry x="1110" y="550" width="135" height="170" as="geometry" />
</mxCell>
<mxCell id="b6oYJSDJwjR9OZKanJwb-45" value="" style="rounded=1;whiteSpace=wrap;html=1;hachureGap=4;pointerEvents=0;strokeWidth=2;container=0;" parent="1" vertex="1">
<mxGeometry x="710" y="504" width="380" height="260" as="geometry" />
</mxCell>
<mxCell id="6" style="vsdxID=6;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeWidth=2;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry x="740" y="533" width="320" height="170" as="geometry" />
</mxCell>
<mxCell id="21" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: &amp;quot;calibri&amp;quot;; color: rgb(0, 0, 0); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;VM1&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=27;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry x="770" y="631" width="260" height="72" as="geometry" />
</mxCell>
<mxCell id="ZT00lVDF8hyaAqTCrx0f-24" value="Base-OS" style="vsdxID=12;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;fontSize=28;" vertex="1" parent="1">
<mxGeometry x="740" y="716" width="320" height="35" as="geometry" />
</mxCell>
<mxCell id="15" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: Calibri; color: rgb(0, 0, 0); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;Server&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=20;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry x="1110" y="1007.8263636363637" width="125" height="62.63636363636364" as="geometry" />
</mxCell>
<mxCell id="b6oYJSDJwjR9OZKanJwb-46" value="" style="rounded=1;whiteSpace=wrap;html=1;hachureGap=4;pointerEvents=0;strokeWidth=2;" parent="1" vertex="1">
<mxGeometry x="720" y="788" width="380" height="520" as="geometry" />
</mxCell>
<mxCell id="5" value="" style="verticalAlign=middle;align=center;vsdxID=5;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeWidth=2;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry x="750" y="835.2727272727273" width="320" height="170" as="geometry" />
</mxCell>
<mxCell id="14" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 22px; font-family: &amp;quot;calibri&amp;quot;; color: rgb(0, 0, 0); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;&lt;font style=&quot;font-size: 28px&quot;&gt;VM1&lt;/font&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=19;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry x="780" y="945.19" width="257.75" height="62.64" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-33" style="vsdxID=12;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;" parent="1" vertex="1">
<mxGeometry x="777.75" y="862.4545454545455" width="260" height="70" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-34" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: &amp;quot;calibri&amp;quot;; color: rgb(255, 255, 255); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;Mumble-Server&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=25;fillColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry x="792.75" y="875.5945454545455" width="234.5" height="43.72727272727273" as="geometry" />
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-52" value="" style="verticalAlign=middle;align=center;vsdxID=5;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeWidth=2;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry x="750" y="1062.1818181818182" width="320" height="170" as="geometry" />
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-53" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 22px; font-family: &amp;quot;calibri&amp;quot;; color: rgb(0, 0, 0); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;&lt;font style=&quot;font-size: 28px&quot;&gt;VM2&lt;/font&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=19;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry x="780" y="1169.55" width="260" height="62.64" as="geometry" />
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-58" style="vsdxID=12;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;" parent="1" vertex="1">
<mxGeometry x="780" y="1092.1781818181817" width="260" height="70" as="geometry" />
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-59" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: &amp;quot;calibri&amp;quot;; color: rgb(255, 255, 255); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;Nextcloud&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=25;fillColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry x="790.5" y="1105.3181818181818" width="234.5" height="43.72727272727273" as="geometry" />
</mxCell>
<mxCell id="ZT00lVDF8hyaAqTCrx0f-25" value="" style="group" vertex="1" connectable="0" parent="1">
<mxGeometry x="770" y="550" width="260" height="70" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-39" style="vsdxID=12;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;" parent="ZT00lVDF8hyaAqTCrx0f-25" vertex="1">
<mxGeometry width="260" height="70" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-40" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: &amp;quot;calibri&amp;quot;; color: rgb(255, 255, 255); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;Mumble Client&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=25;fillColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="ZT00lVDF8hyaAqTCrx0f-25" vertex="1">
<mxGeometry x="12.75" y="21.5" width="234.5" height="37" as="geometry" />
</mxCell>
<mxCell id="ZT00lVDF8hyaAqTCrx0f-26" value="Base-OS" style="vsdxID=12;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;fontSize=28;" vertex="1" parent="1">
<mxGeometry x="747.75" y="1250" width="320" height="35" as="geometry" />
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-66" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.875;entryY=0.5;entryDx=0;entryDy=0;entryPerimeter=0;strokeWidth=3;startArrow=classic;startFill=1;" parent="1" source="6" target="r0mgfz6IdKgSaTeHQ_le-33" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="780" y="900" as="sourcePoint" />
<mxPoint x="554.4999999999998" y="293.51800000000003" as="targetPoint" />
<Array as="points">
<mxPoint x="630" y="910" />
<mxPoint x="180" y="580" />
</Array>
<mxPoint x="790" y="896" as="sourcePoint" />
<mxPoint x="566" y="717" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-65" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.8;entryY=0.8;entryDx=0;entryDy=0;entryPerimeter=0;strokeWidth=3;startArrow=classic;startFill=1;exitX=-0.01;exitY=0.549;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" source="5" target="r0mgfz6IdKgSaTeHQ_le-33" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="780" y="886" as="sourcePoint" />
<mxPoint x="660" y="840" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-63" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.875;entryY=0.5;entryDx=0;entryDy=0;entryPerimeter=0;strokeWidth=3;startArrow=classic;startFill=1;exitX=0;exitY=0.499;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" target="r0mgfz6IdKgSaTeHQ_le-60" edge="1" source="r0mgfz6IdKgSaTeHQ_le-52">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="740" y="1075" as="sourcePoint" />
<mxPoint x="510" y="880" as="targetPoint" />
</mxGeometry>
</mxCell>
</root>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 133 KiB

After

Width:  |  Height:  |  Size: 150 KiB

View File

@ -0,0 +1,15 @@
{
inputs.nixpkgs.url = github:NixOS/nixpkgs/nixos-unstable;
inputs.hiboss.url = "git+https://git.hiboss.com/hiboss";
inputs.hiboss.nixpkgs.follows = "nixpkgs";
outputs = { self, nixpkgs, hiboss, ... }:
let
system = "x86_64-linux";
pkgs = import nixpkgs { inherit system; };
hiboss = import hiboss { inherit system pkgs; };
in
{
nixosConfigurations = builtins.fromJSON (import ./configs.json);
};
}

27
example-flake-full.nix Normal file
View File

@ -0,0 +1,27 @@
{
inputs.nixpkgs.url = github:NixOS/nixpkgs/nixos-unstable;
inputs.hiboss.url = "git+https://git.hiboss.com/hiboss";
inputs.hiboss.nixpkgs.follows = "nixpkgs";
outputs = { self, nixpkgs, hiboss, ... }:
let
system = "x86_64-linux";
pkgs = import nixpkgs { inherit system; };
hiboss = import hiboss { inherit system pkgs; };
in
{
nixosConfigurations = {
default = hiboss.nixosSystem {
adminMode = "local";
networkLayer= "yggdrasil";
applications = {
syncthing = {
enable = true;
sharedFolders = "/shared/docs";
};
mumbleClient.server = "mumble.hiboss";
};
};
};
};
}

BIN
flake_controller_new.epgz Normal file

Binary file not shown.

BIN
flake_controller_new.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

BIN
proxmox.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 140 KiB

View File

@ -1,59 +1,79 @@
<mxfile host="app.diagrams.net" modified="2023-06-24T08:52:09.002Z" agent="Mozilla/5.0 (X11; Linux x86_64; rv:107.0) Gecko/20100101 Firefox/107.0" etag="r14u0UurENQRJTGH3Kuk" version="21.5.0" type="device">
<mxfile host="app.diagrams.net" modified="2023-06-25T10:07:27.291Z" agent="Mozilla/5.0 (X11; Linux x86_64; rv:107.0) Gecko/20100101 Firefox/107.0" etag="0R5u8sYTEL2zQsEBPwp4" version="21.5.0" type="device">
<diagram name="Page-1" id="Page-1">
<mxGraphModel dx="1189" dy="991" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
<mxGraphModel dx="774" dy="506" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" value="Connector" parent="0" />
<mxCell id="r0mgfz6IdKgSaTeHQ_le-33" value="&lt;font style=&quot;font-size: 24px;&quot;&gt;VPN Mesh network&lt;/font&gt;" style="ellipse;shape=cloud;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="170" y="530" width="320" height="240" as="geometry" />
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-42" value="" style="group" parent="1" vertex="1" connectable="0">
<mxGeometry x="591" y="788" width="709" height="251" as="geometry" />
<mxGeometry x="578" y="810" width="709" height="251" as="geometry" />
</mxCell>
<mxCell id="b6oYJSDJwjR9OZKanJwb-46" value="" style="rounded=1;whiteSpace=wrap;html=1;hachureGap=4;pointerEvents=0;strokeWidth=2;" parent="r0mgfz6IdKgSaTeHQ_le-42" vertex="1">
<mxGeometry x="119" width="590" height="251" as="geometry" />
<mxGeometry x="119" y="-30" width="590" height="281" as="geometry" />
</mxCell>
<mxCell id="5" value="" style="verticalAlign=middle;align=center;vsdxID=5;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeWidth=2;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="r0mgfz6IdKgSaTeHQ_le-42" vertex="1">
<mxGeometry x="149" y="40" width="320" height="172" as="geometry" />
<mxCell id="eZtIASL5zvcn_9goES__-36" value="&lt;h2&gt;VM Manager&lt;br&gt;&lt;/h2&gt;" style="vsdxID=14;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;" parent="r0mgfz6IdKgSaTeHQ_le-42" vertex="1">
<mxGeometry x="514" y="85.53000000000011" width="181" height="49.95" as="geometry" />
</mxCell>
<mxCell id="14" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 22px; font-family: &amp;quot;calibri&amp;quot;; color: rgb(0, 0, 0); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;&lt;font style=&quot;font-size: 28px&quot;&gt;VM&lt;br&gt;&lt;/font&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=19;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="r0mgfz6IdKgSaTeHQ_le-42" vertex="1">
<mxGeometry x="150" y="152" width="320" height="53" as="geometry" />
</mxCell>
<mxCell id="15" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: Calibri; color: rgb(0, 0, 0); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;Server&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=20;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="r0mgfz6IdKgSaTeHQ_le-42" vertex="1">
<mxGeometry x="535" y="152" width="125" height="53" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-33" style="vsdxID=12;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;" parent="r0mgfz6IdKgSaTeHQ_le-42" vertex="1">
<mxGeometry x="189" y="63" width="260" height="70" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-36" style="vsdxID=14;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;" parent="r0mgfz6IdKgSaTeHQ_le-42" vertex="1">
<mxGeometry x="499" y="40" width="181" height="76" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-38" style="vsdxID=48;edgeStyle=none;startArrow=none;endArrow=none;startSize=5;endSize=5;strokeWidth=3;strokeColor=#000000;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#ffffff;rounded=0;entryX=0.995;entryY=0.269;entryDx=0;entryDy=0;entryPerimeter=0;" parent="r0mgfz6IdKgSaTeHQ_le-42" edge="1">
<mxCell id="eZtIASL5zvcn_9goES__-38" style="vsdxID=48;edgeStyle=none;startArrow=none;endArrow=classic;startSize=5;endSize=5;strokeWidth=3;strokeColor=#000000;spacingTop=0;spacingBottom=0;spacingLeft=0;spacingRight=0;verticalAlign=middle;html=1;labelBackgroundColor=#ffffff;rounded=0;entryX=0.996;entryY=0.504;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.005;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;startFill=0;endFill=1;" parent="r0mgfz6IdKgSaTeHQ_le-42" edge="1" target="5" source="eZtIASL5zvcn_9goES__-36">
<mxGeometry relative="1" as="geometry">
<mxPoint x="499" y="72" as="sourcePoint" />
<mxPoint x="470" y="72" as="targetPoint" />
<mxPoint x="499" y="50.60557768924302" as="sourcePoint" />
<mxPoint x="520" y="-180" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-44" value="" style="group" parent="1" vertex="1" connectable="0">
<mxGeometry x="710" y="220" width="590" height="251" as="geometry" />
<mxCell id="mQ3fhrx0b4LYlkQwnVk3-25" value="" style="group" vertex="1" connectable="0" parent="r0mgfz6IdKgSaTeHQ_le-42">
<mxGeometry x="153" y="-0.754999999999896" width="321" height="222.51999999999998" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-30" value="" style="rounded=1;whiteSpace=wrap;html=1;hachureGap=4;pointerEvents=0;strokeWidth=2;" parent="r0mgfz6IdKgSaTeHQ_le-44" vertex="1">
<mxGeometry width="590" height="251" as="geometry" />
<mxCell id="5" value="" style="verticalAlign=middle;align=center;vsdxID=5;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeWidth=2;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="mQ3fhrx0b4LYlkQwnVk3-25" vertex="1">
<mxGeometry width="320" height="222.52" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-32" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: &amp;quot;calibri&amp;quot;; color: rgb(0, 0, 0); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;Admin&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=28;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="r0mgfz6IdKgSaTeHQ_le-44" vertex="1">
<mxGeometry x="413" y="140" width="135" height="99" as="geometry" />
<mxCell id="14" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 22px; font-family: &amp;quot;calibri&amp;quot;; color: rgb(0, 0, 0); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;&lt;font style=&quot;font-size: 28px&quot;&gt;VM&lt;br&gt;&lt;/font&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=19;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="mQ3fhrx0b4LYlkQwnVk3-25" vertex="1">
<mxGeometry x="1" y="140.9223306772907" width="320" height="59.33466135458167" as="geometry" />
</mxCell>
<mxCell id="eZtIASL5zvcn_9goES__-42" style="vsdxID=12;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;" parent="r0mgfz6IdKgSaTeHQ_le-44" vertex="1">
<mxGeometry x="72.75" y="90" width="260" height="70" as="geometry" />
<mxCell id="eZtIASL5zvcn_9goES__-33" value="&lt;h2&gt;Controller Daemon&lt;/h2&gt;" style="vsdxID=12;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;" parent="mQ3fhrx0b4LYlkQwnVk3-25" vertex="1">
<mxGeometry x="30" y="92.02499999999989" width="260" height="48.9" as="geometry" />
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-34" value="" style="curved=1;endArrow=classic;html=1;rounded=0;entryX=0.012;entryY=0.39;entryDx=0;entryDy=0;entryPerimeter=0;strokeWidth=3;startArrow=classic;startFill=1;fillColor=#008a00;strokeColor=#005700;" parent="1" target="eZtIASL5zvcn_9goES__-42" edge="1">
<mxCell id="mQ3fhrx0b4LYlkQwnVk3-18" value="&lt;h2&gt;Controller Frontend&lt;br&gt;&lt;/h2&gt;" style="vsdxID=12;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;" vertex="1" parent="mQ3fhrx0b4LYlkQwnVk3-25">
<mxGeometry x="150" y="33.1" width="140" height="49.95" as="geometry" />
</mxCell>
<mxCell id="mQ3fhrx0b4LYlkQwnVk3-31" value="&lt;font style=&quot;font-size: 28px;&quot; face=&quot;calibri&quot;&gt;(optional)&lt;/font&gt;" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="r0mgfz6IdKgSaTeHQ_le-42">
<mxGeometry x="562" y="20" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="mQ3fhrx0b4LYlkQwnVk3-16" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.525;entryY=0.02;entryDx=0;entryDy=0;entryPerimeter=0;strokeWidth=3;" edge="1" parent="1" source="mQ3fhrx0b4LYlkQwnVk3-21" target="mQ3fhrx0b4LYlkQwnVk3-18">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="780" y="900" as="sourcePoint" />
<mxPoint x="554.4999999999998" y="293.51800000000003" as="targetPoint" />
<Array as="points">
<mxPoint x="630" y="910" />
<mxPoint x="180" y="580" />
</Array>
<mxPoint x="891.4057853270601" y="471.9920318725103" as="sourcePoint" />
<mxPoint x="650" y="530" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="mQ3fhrx0b4LYlkQwnVk3-21" value="&lt;font style=&quot;font-size: 28px;&quot; face=&quot;calibri&quot;&gt;Admin&lt;/font&gt;" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="896" y="420" width="120" height="80" as="geometry" />
</mxCell>
<mxCell id="15" value="&lt;font data-darkreader-inline-color=&quot;&quot; style=&quot;font-size: 28px; font-family: Calibri; color: rgb(0, 0, 0); direction: ltr; letter-spacing: 0px; line-height: 120%; opacity: 1; --darkreader-inline-color: #e8e6e3;&quot;&gt;Server&lt;br&gt;&lt;/font&gt;" style="verticalAlign=middle;align=center;vsdxID=20;fillColor=none;gradientColor=none;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=none;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;" parent="1" vertex="1">
<mxGeometry x="1300" y="919.9973306772908" width="125" height="59.33466135458167" as="geometry" />
</mxCell>
<mxCell id="mQ3fhrx0b4LYlkQwnVk3-24" value="&lt;font style=&quot;font-size: 28px;&quot; face=&quot;calibri&quot; color=&quot;#000000&quot;&gt;User&lt;/font&gt;" style="ellipse;whiteSpace=wrap;html=1;fillColor=default;fontColor=#FFFFFF;" vertex="1" parent="1">
<mxGeometry x="1305" y="831" width="120" height="80" as="geometry" />
</mxCell>
<mxCell id="mQ3fhrx0b4LYlkQwnVk3-26" value="" style="endArrow=classic;html=1;rounded=0;entryX=1.008;entryY=0.557;entryDx=0;entryDy=0;entryPerimeter=0;strokeWidth=3;exitX=0;exitY=0.5;exitDx=0;exitDy=0;fillColor=#f5f5f5;strokeColor=#666666;" edge="1" parent="1" source="mQ3fhrx0b4LYlkQwnVk3-24" target="mQ3fhrx0b4LYlkQwnVk3-18">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="910" y="530" as="sourcePoint" />
<mxPoint x="907" y="853" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="mQ3fhrx0b4LYlkQwnVk3-27" value="&lt;h2&gt;Controller cli&lt;br&gt;&lt;/h2&gt;" style="vsdxID=12;fillColor=#0050ef;shape=stencil(nZBLDoAgDERP0z3SIyjew0SURgSD+Lu9kMZoXLhwN9O+tukAlrNpJg1SzDH4QW/URgNYgZTkjA4UkwJUgGXng+6DX1zLfmoymdXo17xh5zmRJ6Q42BWCfc2oJfdAr+Yv+AP9Cb7OJ3H/2JG1HNGz/84klThPVCc=);strokeColor=#001DBC;strokeWidth=3;labelBackgroundColor=none;rounded=0;html=1;whiteSpace=wrap;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="744" y="509.9950000000001" width="140" height="49.95" as="geometry" />
</mxCell>
<mxCell id="mQ3fhrx0b4LYlkQwnVk3-28" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.203;entryY=0.071;entryDx=0;entryDy=0;entryPerimeter=0;strokeWidth=3;" edge="1" parent="1" source="mQ3fhrx0b4LYlkQwnVk3-27" target="eZtIASL5zvcn_9goES__-33">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="961" y="530" as="sourcePoint" />
<mxPoint x="965" y="853" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="r0mgfz6IdKgSaTeHQ_le-33" value="&lt;font style=&quot;font-size: 24px;&quot;&gt;VPN Mesh network&lt;/font&gt;" style="ellipse;shape=cloud;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="720" y="550" width="320" height="240" as="geometry" />
</mxCell>
<mxCell id="mQ3fhrx0b4LYlkQwnVk3-30" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.992;entryY=0.492;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;strokeWidth=3;" edge="1" parent="1" source="mQ3fhrx0b4LYlkQwnVk3-21" target="mQ3fhrx0b4LYlkQwnVk3-27">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="950" y="520" as="sourcePoint" />
<mxPoint x="970" y="540" as="targetPoint" />
</mxGeometry>
</mxCell>
</root>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 75 KiB

After

Width:  |  Height:  |  Size: 74 KiB