mtheall / ftpd

FTP Server for 3DS/Switch
GNU General Public License v3.0
1.4k stars 135 forks source link

ftpd

FTP Server for 3DS/Switch/Linux.

Features

Dear ImGui

ftpd uses Dear ImGui as its graphical backend.

Standard Dear ImGui controller inputs are supported.

Latest Builds

NDS: https://mtheall.com/~mtheall/ftpd.nds

CIA: https://mtheall.com/~mtheall/ftpd.cia

3DSX: https://mtheall.com/~mtheall/ftpd.3dsx

NRO: https://mtheall.com/~mtheall/ftpd.nro

CIA QR Code

ftpd.cia

Classic Builds

Classic builds use a console instead of Dear ImGui.

CIA: https://mtheall.com/~mtheall/ftpd-classic.cia

3DSX: https://mtheall.com/~mtheall/ftpd-classic.3dsx

NRO: https://mtheall.com/~mtheall/ftpd-classic.nro

CIA QR Code

ftpd-classic.cia

Build and install

You must set up the development environment.

NDS

The following pacman packages are required to build nds/ftpd.nds:

devkitARM
dswifi
libfat-nds
libnds

They are available as part of the nds-dev meta-package.

3DSX

The following pacman packages are required to build 3ds/ftpd.3dsx:

3dstools
devkitARM
libctru

They are available as part of the 3ds-dev meta-package.

Build 3ds/ftpd.3dsx:

make 3dsx

NRO

The following pacman packages are required to build switch/ftpd.nro:

devkitA64
libnx
switch-tools
switch-libzstd

The first three are available as part of the switch-dev meta-package. Additionally, ImageMagick is required for converting assets.

Build switch/ftpd.nro:

make nro

Supported Commands

Planned Commands

SITE commands

1mDNS hostname not available on NDS

2getMTime only on 3DS. Enabling will give timestamps at the expense of slow listings.