2025-03-19 22:29:56 +01:00
|
|
|
import type React from "react"
|
2025-03-19 18:43:37 +01:00
|
|
|
|
2025-03-19 22:20:46 +01:00
|
|
|
import Image from "next/image"
|
|
|
|
import { Wrench, Target, CheckCircle } from "lucide-react"
|
|
|
|
import { useState } from "react"
|
2025-03-19 18:43:37 +01:00
|
|
|
|
2025-03-19 22:20:46 +01:00
|
|
|
export default function Page() {
|
2025-03-19 18:43:37 +01:00
|
|
|
return (
|
|
|
|
<div className="container mx-auto px-4 py-8">
|
2025-03-19 22:20:46 +01:00
|
|
|
<h1 className="text-3xl font-bold mb-6">Create Synology DSM VM using ProxMenux</h1>
|
2025-03-19 18:43:37 +01:00
|
|
|
|
2025-03-19 22:20:46 +01:00
|
|
|
<section className="mb-10">
|
|
|
|
<h2 className="text-2xl font-semibold mb-4 flex items-center">Introduction</h2>
|
|
|
|
<p className="mb-4">
|
2025-03-19 18:43:37 +01:00
|
|
|
ProxMenux provides an automated script that creates and configures a VM to install Synology DSM (DiskStation
|
2025-03-19 22:20:46 +01:00
|
|
|
Manager). This script simplifies the process by downloading and adding one of the available loaders to the VM
|
|
|
|
boot, giving you the option between three different choices:
|
2025-03-19 18:43:37 +01:00
|
|
|
</p>
|
2025-03-19 22:20:46 +01:00
|
|
|
<ul className="list-disc pl-5 mb-4">
|
|
|
|
<li>AuxXxilium Arc (referred to as "arc")</li>
|
|
|
|
<li>edPill rr (referred to as "rr")</li>
|
|
|
|
<li>TinyCore RedPill M-shell (referred to as "tinycore")</li>
|
2025-03-19 18:43:37 +01:00
|
|
|
</ul>
|
2025-03-19 22:20:46 +01:00
|
|
|
<p className="mb-4">
|
2025-03-19 18:43:37 +01:00
|
|
|
You also have the option to add a custom loader if you prefer to modify or create your own configuration.
|
|
|
|
</p>
|
2025-03-19 22:20:46 +01:00
|
|
|
<p className="mb-4">
|
|
|
|
All loaders are similar although each has its own structure and configuration methods. This guide describes
|
|
|
|
the 6 basic steps involved in setting up a Synology DSM loader. The exact steps may vary depending on the
|
|
|
|
loader and/or changes introduced by the developer, so understanding the basic steps similar in all of them
|
|
|
|
will help you know how to build the loader of your choice for the proper functioning of Synology DS.
|
|
|
|
</p>
|
|
|
|
</section>
|
|
|
|
|
|
|
|
<section className="mb-10">
|
|
|
|
<h2 className="text-2xl font-semibold mb-4 flex items-center">
|
|
|
|
<Wrench className="h-6 w-6 mr-2 text-blue-500" />
|
|
|
|
Step-by-Step Guide
|
|
|
|
</h2>
|
|
|
|
<p className="mb-6">
|
|
|
|
This guide will walk you through the process of configuring the loader and setting up the VM. Each step
|
|
|
|
includes screenshots to show how the process looks with the three loaders (arc, rr, and tinycore).
|
|
|
|
</p>
|
|
|
|
</section>
|
2025-03-19 18:43:37 +01:00
|
|
|
|
|
|
|
<section className="mb-12 border-b pb-8">
|
|
|
|
<h2 className="text-xl font-semibold mb-4 flex items-center" id="step1">
|
|
|
|
<StepNumber number={1} />
|
|
|
|
Start the VM and Access the Main Menu
|
|
|
|
</h2>
|
|
|
|
<p className="mb-4">
|
2025-03-19 22:20:46 +01:00
|
|
|
Once the VM is created, start it. The first time you boot the VM, you'll access the loader's main menu to
|
|
|
|
select and configure the DSM model you want to build. Once the loader is created, this step will be skipped
|
|
|
|
unless you manually force a reconfiguration from the boot monitor.
|
2025-03-19 18:43:37 +01:00
|
|
|
</p>
|
|
|
|
|
2025-03-19 22:20:46 +01:00
|
|
|
<TabGroup
|
|
|
|
tabs={[
|
|
|
|
{
|
|
|
|
id: "arc",
|
|
|
|
label: "Arc Loader",
|
|
|
|
content: (
|
|
|
|
<div className="flex flex-col space-y-8 mt-6">
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/arc/arc_1_1_1.png"
|
|
|
|
alt="Arc Loader Interface"
|
|
|
|
caption="Arc Loader Interface"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
),
|
|
|
|
},
|
|
|
|
{
|
|
|
|
id: "rr",
|
|
|
|
label: "RR Loader",
|
|
|
|
content: (
|
|
|
|
<div className="flex flex-col space-y-8 mt-6">
|
|
|
|
<div className="bg-gray-50 p-4 rounded-lg mb-6">
|
|
|
|
<p className="mb-2">
|
|
|
|
<strong>In the case of RR</strong>, you'll need to manually enter the following command to open
|
|
|
|
the menu:
|
|
|
|
</p>
|
|
|
|
<pre className="bg-gray-100 p-4 rounded-md overflow-x-auto text-sm">
|
|
|
|
<code>./menu.sh</code>
|
|
|
|
</pre>
|
|
|
|
</div>
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/rr/rr_2_0_1.png"
|
|
|
|
alt="RR Command Example"
|
|
|
|
caption="RR Command Example: ./menu.sh"
|
|
|
|
/>
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/rr/rr_2_1_1.png"
|
|
|
|
alt="RR Loader Interface"
|
|
|
|
caption="RR Loader Interface"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
),
|
|
|
|
},
|
|
|
|
{
|
|
|
|
id: "tinycore",
|
|
|
|
label: "TinyCore Loader",
|
|
|
|
content: (
|
|
|
|
<div className="flex flex-col space-y-8 mt-6">
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/tinycore/tinycore_3_1_1.png"
|
|
|
|
alt="TinyCore Loader Interface"
|
|
|
|
caption="TinyCore Loader Interface"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
),
|
|
|
|
},
|
|
|
|
]}
|
|
|
|
/>
|
2025-03-19 18:43:37 +01:00
|
|
|
</section>
|
|
|
|
|
|
|
|
<section className="mb-12 border-b pb-8">
|
|
|
|
<h2 className="text-xl font-semibold mb-4 flex items-center" id="step2">
|
|
|
|
<StepNumber number={2} />
|
|
|
|
Select Model
|
|
|
|
</h2>
|
2025-03-19 22:20:46 +01:00
|
|
|
<p className="mb-4">
|
|
|
|
After loading the menu, select the Synology DSM model you want to install. Depending on the loader, you may
|
|
|
|
sometimes need to expand the options to see more models.
|
|
|
|
</p>
|
|
|
|
<h3 className="text-lg font-semibold mb-4">Examples:</h3>
|
|
|
|
<TabGroup
|
|
|
|
tabs={[
|
|
|
|
{
|
|
|
|
id: "arc",
|
|
|
|
label: "Arc Loader",
|
|
|
|
content: (
|
|
|
|
<div className="flex flex-col space-y-8 mt-6">
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/arc/arc_1_2_1.png"
|
|
|
|
alt="Arc Model Selection"
|
|
|
|
caption="Arc Model Selection"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
),
|
|
|
|
},
|
|
|
|
{
|
|
|
|
id: "rr",
|
|
|
|
label: "RR Loader",
|
|
|
|
content: (
|
|
|
|
<div className="flex flex-col space-y-8 mt-6">
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/rr/rr_2_2_1.png"
|
|
|
|
alt="RR Model Selection"
|
|
|
|
caption="RR Model Selection"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
),
|
|
|
|
},
|
|
|
|
{
|
|
|
|
id: "tinycore",
|
|
|
|
label: "TinyCore Loader",
|
|
|
|
content: (
|
|
|
|
<div className="flex flex-col space-y-8 mt-6">
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/tinycore/tinycore_3_2_1.png"
|
|
|
|
alt="TinyCore Model Selection"
|
|
|
|
caption="TinyCore Model Selection"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
),
|
|
|
|
},
|
|
|
|
]}
|
|
|
|
/>
|
|
|
|
<p className="mt-4">In our example, we'll choose the SA6400 model.</p>
|
2025-03-19 18:43:37 +01:00
|
|
|
</section>
|
|
|
|
|
|
|
|
<section className="mb-12 border-b pb-8">
|
|
|
|
<h2 className="text-xl font-semibold mb-4 flex items-center" id="step3">
|
|
|
|
<StepNumber number={3} />
|
|
|
|
Select DSM Version
|
|
|
|
</h2>
|
|
|
|
<p className="mb-4">
|
2025-03-19 22:20:46 +01:00
|
|
|
After selecting the model, you need to choose the DSM version you want to install. In some loaders (such as
|
|
|
|
arc), you may encounter additional options at this stage.
|
2025-03-19 18:43:37 +01:00
|
|
|
</p>
|
|
|
|
|
2025-03-19 22:20:46 +01:00
|
|
|
<TabGroup
|
|
|
|
tabs={[
|
|
|
|
{
|
|
|
|
id: "arc",
|
|
|
|
label: "Arc Loader",
|
|
|
|
content: (
|
|
|
|
<div className="flex flex-col space-y-8 mt-6">
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/arc/arc_1_3_1.png"
|
|
|
|
alt="Arc Version Selection - Step 1"
|
|
|
|
caption="Arc Version Selection - Step 1"
|
|
|
|
/>
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/arc/arc_1_3_2.png"
|
|
|
|
alt="Arc Version Selection - Step 2"
|
|
|
|
caption="Arc Version Selection - Step 2"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
),
|
|
|
|
},
|
|
|
|
{
|
|
|
|
id: "rr",
|
|
|
|
label: "RR Loader",
|
|
|
|
content: (
|
|
|
|
<div className="flex flex-col space-y-8 mt-6">
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/rr/rr_2_3_1.png"
|
|
|
|
alt="RR Version Selection - Step 1"
|
|
|
|
caption="RR Version Selection - Step 1"
|
|
|
|
/>
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/rr/rr_2_3_2.png"
|
|
|
|
alt="RR Version Selection - Step 2"
|
|
|
|
caption="RR Version Selection - Step 2"
|
|
|
|
/>
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/rr/rr_2_3_3.png"
|
|
|
|
alt="RR Version Selection - Step 3"
|
|
|
|
caption="RR Version Selection - Step 3"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
),
|
|
|
|
},
|
|
|
|
{
|
|
|
|
id: "tinycore",
|
|
|
|
label: "TinyCore Loader",
|
|
|
|
content: (
|
|
|
|
<div className="flex flex-col space-y-8 mt-6">
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/tinycore/tinycore_3_3_1.png"
|
|
|
|
alt="TinyCore Version Selection - Step 1"
|
|
|
|
caption="TinyCore Version Selection - Step 1"
|
|
|
|
/>
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/tinycore/tinycore_3_3_2.png"
|
|
|
|
alt="TinyCore Version Selection - Step 2"
|
|
|
|
caption="TinyCore Version Selection - Step 2"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
),
|
|
|
|
},
|
|
|
|
]}
|
|
|
|
/>
|
2025-03-19 18:43:37 +01:00
|
|
|
</section>
|
|
|
|
|
|
|
|
<section className="mb-12 border-b pb-8">
|
|
|
|
<h2 className="text-xl font-semibold mb-4 flex items-center" id="step4">
|
|
|
|
<StepNumber number={4} />
|
|
|
|
Select Add-Ons
|
|
|
|
</h2>
|
|
|
|
<p className="mb-4">This step allows you to add additional features or custom configurations to the loader.</p>
|
|
|
|
|
2025-03-19 22:20:46 +01:00
|
|
|
<TabGroup
|
|
|
|
tabs={[
|
|
|
|
{
|
|
|
|
id: "arc",
|
|
|
|
label: "Arc Loader",
|
|
|
|
content: (
|
|
|
|
<div className="flex flex-col space-y-8 mt-6">
|
|
|
|
<p className="mb-2">
|
|
|
|
<strong>Arc</strong> gives you the option to configure automatically or manually adjust the
|
|
|
|
settings.
|
|
|
|
</p>
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/arc/arc_1_4_1.png"
|
|
|
|
alt="Arc Auto Configuration"
|
|
|
|
caption="Arc Auto Configuration"
|
|
|
|
/>
|
|
|
|
<p className="mb-2">
|
|
|
|
If we choose not to use automatic mode, we enter the menu to configure different options necessary
|
|
|
|
for the loader:
|
|
|
|
</p>
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/arc/arc_1_4_2.png"
|
|
|
|
alt="Arc Manual Configuration"
|
|
|
|
caption="Arc Manual Configuration"
|
|
|
|
/>
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/arc/arc_1_4_3.png"
|
|
|
|
alt="Arc SN/Mac Configuration"
|
|
|
|
caption="Arc SN/Mac Configuration"
|
|
|
|
/>
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/arc/arc_1_4_4.png"
|
|
|
|
alt="Arc Sata Portmap"
|
|
|
|
caption="Arc Sata Portmap (use the recommended option)"
|
|
|
|
/>
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/arc/arc_1_4_5.png"
|
|
|
|
alt="Arc Add-Ons Selection"
|
|
|
|
caption="Arc Add-Ons Selection"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
),
|
|
|
|
},
|
|
|
|
{
|
|
|
|
id: "rr",
|
|
|
|
label: "RR Loader",
|
|
|
|
content: (
|
|
|
|
<div className="flex flex-col space-y-8 mt-6">
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/rr/rr_2_4_1.png"
|
|
|
|
alt="RR Add-On Step 1"
|
|
|
|
caption="RR Add-On Step 1"
|
|
|
|
/>
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/rr/rr_2_4_2.png"
|
|
|
|
alt="RR Add-On Step 2"
|
|
|
|
caption="RR Add-On Step 2 - Press to add add-ons"
|
|
|
|
/>
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/rr/rr_2_4_3.png"
|
|
|
|
alt="RR Add-On Step 3"
|
|
|
|
caption="RR Add-On Step 3 - Select the one you want by clicking on it. If you want to add more, repeat the process from images 2.4.2 and 2.4.3"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
),
|
|
|
|
},
|
|
|
|
{
|
|
|
|
id: "tinycore",
|
|
|
|
label: "TinyCore Loader",
|
|
|
|
content: (
|
|
|
|
<div className="flex flex-col space-y-8 mt-6">
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/tinycore/tinycore_3_4_1.png"
|
|
|
|
alt="TinyCore SN Configuration"
|
|
|
|
caption="TinyCore SN Configuration"
|
|
|
|
/>
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/tinycore/tinycore_3_4_2.png"
|
|
|
|
alt="TinyCore Random Option"
|
|
|
|
caption="TinyCore Random Option - The random option is recommended"
|
|
|
|
/>
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/tinycore/tinycore_3_4_3.png"
|
|
|
|
alt="TinyCore MAC Configuration"
|
|
|
|
caption="TinyCore MAC Configuration"
|
|
|
|
/>
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/tinycore/tinycore_3_4_4.png"
|
|
|
|
alt="TinyCore VM MAC"
|
|
|
|
caption="TinyCore VM MAC - Choose to use your VM's MAC or a random one"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
),
|
|
|
|
},
|
|
|
|
]}
|
|
|
|
/>
|
2025-03-19 18:43:37 +01:00
|
|
|
</section>
|
|
|
|
|
|
|
|
<section className="mb-12 border-b pb-8">
|
|
|
|
<h2 className="text-xl font-semibold mb-4 flex items-center" id="step5">
|
|
|
|
<StepNumber number={5} />
|
|
|
|
Build the Loader
|
|
|
|
</h2>
|
|
|
|
<p className="mb-4">
|
2025-03-19 22:20:46 +01:00
|
|
|
Once you have selected the model, DSM version, and add-ons, proceed to build the loader. This process might
|
|
|
|
take a few minutes depending on the loader and the selected configuration. To start, select the "Build the
|
|
|
|
Loader" option.
|
2025-03-19 18:43:37 +01:00
|
|
|
</p>
|
2025-03-19 22:20:46 +01:00
|
|
|
<h3 className="text-lg font-semibold mb-4">Examples:</h3>
|
|
|
|
<TabGroup
|
|
|
|
tabs={[
|
|
|
|
{
|
|
|
|
id: "arc",
|
|
|
|
label: "Arc Loader",
|
|
|
|
content: (
|
|
|
|
<div className="flex flex-col space-y-8 mt-6">
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/arc/arc_1_5_1.png"
|
|
|
|
alt="Arc Build Loader"
|
|
|
|
caption="Arc Build Loader"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
),
|
|
|
|
},
|
|
|
|
{
|
|
|
|
id: "rr",
|
|
|
|
label: "RR Loader",
|
|
|
|
content: (
|
|
|
|
<div className="flex flex-col space-y-8 mt-6">
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/rr/rr_2_5_1.png"
|
|
|
|
alt="RR Build Loader"
|
|
|
|
caption="RR Build Loader"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
),
|
|
|
|
},
|
|
|
|
{
|
|
|
|
id: "tinycore",
|
|
|
|
label: "TinyCore Loader",
|
|
|
|
content: (
|
|
|
|
<div className="flex flex-col space-y-8 mt-6">
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/tinycore/tinycore_3_5_1.png"
|
|
|
|
alt="TinyCore Build Loader"
|
|
|
|
caption="TinyCore Build Loader"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
),
|
|
|
|
},
|
|
|
|
]}
|
|
|
|
/>
|
2025-03-19 18:43:37 +01:00
|
|
|
</section>
|
|
|
|
|
|
|
|
<section className="mb-12 border-b pb-8">
|
|
|
|
<h2 className="text-xl font-semibold mb-4 flex items-center" id="step6">
|
|
|
|
<StepNumber number={6} />
|
|
|
|
Boot the Loader
|
|
|
|
</h2>
|
|
|
|
<p className="mb-4">
|
|
|
|
Once the loader has been built, it will prompt you to boot. The VM will restart with the configuration you've
|
|
|
|
created and start the DSM installation.
|
|
|
|
</p>
|
2025-03-19 22:20:46 +01:00
|
|
|
<h3 className="text-lg font-semibold mb-4">Examples:</h3>
|
|
|
|
<TabGroup
|
|
|
|
tabs={[
|
|
|
|
{
|
|
|
|
id: "arc",
|
|
|
|
label: "Arc Loader",
|
|
|
|
content: (
|
|
|
|
<div className="flex flex-col space-y-8 mt-6">
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/arc/arc_1_6_1.png"
|
|
|
|
alt="Arc Boot Loader"
|
|
|
|
caption="Arc Boot Loader"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
),
|
|
|
|
},
|
|
|
|
{
|
|
|
|
id: "rr",
|
|
|
|
label: "RR Loader",
|
|
|
|
content: (
|
|
|
|
<div className="flex flex-col space-y-8 mt-6">
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/rr/rr_2_6_1.png"
|
|
|
|
alt="RR Boot Loader"
|
|
|
|
caption="RR Boot Loader"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
),
|
|
|
|
},
|
|
|
|
{
|
|
|
|
id: "tinycore",
|
|
|
|
label: "TinyCore Loader",
|
|
|
|
content: (
|
|
|
|
<div className="flex flex-col space-y-8 mt-6">
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/tinycore/tinycore_3_6_1.png"
|
|
|
|
alt="TinyCore Boot Loader"
|
|
|
|
caption="TinyCore Boot Loader"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
),
|
|
|
|
},
|
|
|
|
]}
|
|
|
|
/>
|
2025-03-19 18:43:37 +01:00
|
|
|
</section>
|
|
|
|
|
|
|
|
{/* STARTING DSM INSTALLATION */}
|
|
|
|
<section className="mb-8">
|
|
|
|
<h2 className="text-xl font-semibold mb-4 flex items-center">
|
2025-03-19 22:20:46 +01:00
|
|
|
<CheckCircle className="h-6 w-6 mr-3 text-green-500" />
|
2025-03-19 18:43:37 +01:00
|
|
|
Starting the DSM Installation
|
|
|
|
</h2>
|
|
|
|
<p className="mb-4">Once the loader is booted, you can find your Synology device using:</p>
|
|
|
|
<div className="bg-gray-100 p-4 rounded-md overflow-x-auto text-sm mb-4">
|
|
|
|
<code>https://find.synology.com</code>
|
|
|
|
</div>
|
|
|
|
<p className="mb-6">Follow the on-screen steps to complete the DSM installation.</p>
|
2025-03-19 22:20:46 +01:00
|
|
|
<div className="flex flex-col space-y-8">
|
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/install_DSM.png"
|
|
|
|
alt="DSM Setup"
|
|
|
|
caption="DSM Setup Screen"
|
|
|
|
/>
|
2025-03-19 18:43:37 +01:00
|
|
|
<ImageWithCaption
|
|
|
|
src="https://macrimi.github.io/ProxMenux/vm/synology/finish_install_DSM.png"
|
|
|
|
alt="Installation Complete"
|
|
|
|
caption="Installation Complete"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
</section>
|
|
|
|
|
2025-03-19 22:20:46 +01:00
|
|
|
<section className="mb-8">
|
|
|
|
<h2 className="text-2xl font-semibold mb-4 flex items-center">
|
|
|
|
<Target className="h-6 w-6 mr-2 text-blue-500" />
|
|
|
|
Tips
|
|
|
|
</h2>
|
|
|
|
<ul className="list-disc pl-5 space-y-2">
|
2025-03-19 18:43:37 +01:00
|
|
|
<li>
|
2025-03-19 22:20:46 +01:00
|
|
|
Keep in mind that available options may change depending on the loader version and developer updates. If you
|
|
|
|
encounter issues during the loader creation process, consult the loader documentation. ProxMenux does not
|
|
|
|
provide support for the different loaders.
|
2025-03-19 18:43:37 +01:00
|
|
|
</li>
|
2025-03-19 22:20:46 +01:00
|
|
|
<li>Some loaders offer the possibility of configuration via web with ip:7080 or 7090.</li>
|
2025-03-19 18:43:37 +01:00
|
|
|
<li>
|
2025-03-19 22:20:46 +01:00
|
|
|
Some older DSM models may have issues recognizing disks or the network card. It is recommended to use more
|
|
|
|
recent models.
|
2025-03-19 18:43:37 +01:00
|
|
|
</li>
|
|
|
|
</ul>
|
2025-03-19 22:20:46 +01:00
|
|
|
</section>
|
|
|
|
</div>
|
|
|
|
)
|
|
|
|
}
|
|
|
|
|
2025-03-19 22:29:56 +01:00
|
|
|
// Añadir esta interfaz antes de la función TabGroup
|
|
|
|
interface Tab {
|
|
|
|
id: string
|
|
|
|
label: string
|
|
|
|
content: React.ReactNode
|
|
|
|
}
|
|
|
|
|
|
|
|
// Modificar la definición de la función TabGroup para incluir el tipo
|
|
|
|
function TabGroup({ tabs }: { tabs: Tab[] }) {
|
2025-03-19 22:20:46 +01:00
|
|
|
const [activeTab, setActiveTab] = useState(tabs[0].id)
|
|
|
|
|
|
|
|
return (
|
|
|
|
<div className="mt-4">
|
|
|
|
<div className="flex border-b">
|
|
|
|
{tabs.map((tab) => (
|
|
|
|
<button
|
|
|
|
key={tab.id}
|
|
|
|
onClick={() => setActiveTab(tab.id)}
|
|
|
|
className={`px-4 py-2 font-medium text-sm focus:outline-none ${
|
|
|
|
activeTab === tab.id ? "border-b-2 border-blue-500 text-blue-600" : "text-gray-500 hover:text-gray-700"
|
|
|
|
}`}
|
|
|
|
>
|
|
|
|
{tab.label}
|
|
|
|
</button>
|
|
|
|
))}
|
|
|
|
</div>
|
|
|
|
<div className="mt-4">{tabs.find((tab) => tab.id === activeTab)?.content}</div>
|
|
|
|
</div>
|
|
|
|
)
|
|
|
|
}
|
|
|
|
|
|
|
|
function ImageWithCaption({ src, alt, caption }: { src: string; alt: string; caption: string }) {
|
|
|
|
return (
|
|
|
|
<div className="flex flex-col items-center w-full max-w-[768px] mx-auto my-4">
|
|
|
|
<div className="w-full rounded-md overflow-hidden">
|
|
|
|
<Image
|
|
|
|
src={src || "/placeholder.svg"}
|
|
|
|
alt={alt}
|
|
|
|
width={768}
|
|
|
|
height={0}
|
|
|
|
style={{ height: "auto" }}
|
|
|
|
className="object-contain w-full"
|
|
|
|
sizes="(max-width: 768px) 100vw, 768px"
|
|
|
|
/>
|
2025-03-19 18:43:37 +01:00
|
|
|
</div>
|
2025-03-19 22:20:46 +01:00
|
|
|
<span className="mt-2 text-sm text-gray-600">{caption}</span>
|
|
|
|
</div>
|
|
|
|
)
|
|
|
|
}
|
|
|
|
|
|
|
|
function StepNumber({ number }: { number: number }) {
|
|
|
|
return (
|
|
|
|
<div
|
|
|
|
className="inline-flex items-center justify-center w-8 h-8 mr-3 text-white bg-blue-500 rounded-full"
|
|
|
|
aria-hidden="true"
|
|
|
|
>
|
|
|
|
<span className="text-sm font-bold">{number}</span>
|
2025-03-19 18:43:37 +01:00
|
|
|
</div>
|
|
|
|
)
|
|
|
|
}
|
|
|
|
|