{% extends "base.html" %} {% block content %} {% include 'nav.html' %}
{% if admin_account_created == false %} {% endif %}

Authentication

List of users:
User Permissions Actions


Library

Paths

Configure directories containing your games.

Path Actions

File watcher

Monitor library paths for changes. Local paths use native OS events; network filesystems are polled at the interval below.

s

Management

Configure automated library management.

Deletes older update files when a newer version is available in the library.

File compression

Compress files to save disk space after they are added and organized.

Compress files to NSZ/XCZ (NSPNSZ, XCIXCZ) after they are added and organized. Every compressed file is verified before the original is removed.
zstandard level (122). Higher = smaller files but slower. Default: 18.

Enables zstandard long-distance matching for a better ratio on large files, at higher memory use.
Block compression allows streaming/mounting without full decompression.
Block size is 2^x (1432). Default: 20 (1 MB). Only used in block mode.
Threads each compression task uses (0 = automatic). Note: this multiplies with the number of workers — high values across many workers can oversubscribe the CPU.

Organizer

Keep your library organized.

Enables automatic organization of identified files in the library, according to the templates below.
Removes empty folders after organizing files.
Ownfoil enforces filename sanitization depending on the OS running it. Enabling this will sanitize filenames with Windows compatible characters and keep paths within the Windows length limit, this is needed when acessing libraries from Windows systems (e.g. SMB/NFS mount).
Templates

The final computed paths will be relative to the root path of the library, the file extension is added automatically.

Make sure the templates contain [{appId}][v{appVersion}] for Tinfoil to recognize the apps.

Available attributes for all templates:

  • {extension}: File extension (e.g., nsp, nsz)
  • {titleId}: Title ID of the game
  • {titleName}: Name of the game title

Available attributes for Base, Update, and DLC templates:

  • {appId}: Application ID
  • {appVersion}: Application version
  • {patchLevel}: Patch level
  • {appName}: Name of the application (title or DLC name)

Titles

Titles identification configuration.

Region and Language used to get games informations.
Console keys are required to decrypt any Nintendo content, including backups. Ownfoil uses this to identify files, regardless of the filename.


Shop

Shop configuration and customization.

Configure your shop URL to enable host verification.
Host verification from client requests will be enforced if the shop is accessed securely (with https), make sure your reverse proxy does NOT allow insecure connections (or upgrades them to use SSL) and correctly sets the X-Forwarded-Proto header.
If enabled, Shop access from clients does not require authentication.
Message presented in clients after successfully loading your shop.

Clients

Tinfoil
Enable or disable Tinfoil client access to the shop.
Serve encrypted and compressed shop, so that only Tinfoil clients can access the content. Strongly suggested to enable it for security.
Sphaira
Enable or disable Sphaira client access to the shop.
CyberFoil
Enable or disable CyberFoil client access to the shop.

Scheduler

Configure the periodic jobs. Interval format is number + unit (e.g., 2h, 30m, 1d), with units: s (seconds), m (minutes), h (hours), d (days). Set to 0 to disable.

How often to automatically update TitleDB, scan and regenerate the library.

Workers

Configure the number of task worker processes. More workers allow parallel processing of tasks (e.g., scanning, identifying files).

Number of worker processes.
How many disk-heavy tasks (compression, decompression) run at once, independent of worker count. Compressing several multi-GB files in parallel from one disk makes the heads seek back and forth and can collapse throughput, so more is not always faster. Pick based on where your library lives:
  • Network share or a single hard drive (HDD): 1 — avoids seek thrashing; the safe default.
  • SATA SSD: 2–3 — no seek penalty, so limited by CPU.
  • NVMe with spare CPU cores: raise toward your core count — each compression uses ~3–4 threads, so the CPU, not the disk, is the ceiling.
{% endblock %}