SNAKELAND(1)

NAME
snakeland - Instant Python script installer.

SYNOPSIS
snakeland --version --help --license
snakeland install-byconf [CONFIG]
snakeland uninstall [PKGNAME]
snakeland findpy3 [--later 3.xx] | [--older 3.xx] | --latest | [--range 3.xx-3.yy] | [--order 3.x,..,3.yy]

DESCRIPTION
snakeland is instant python3 script installer.
The script wrapper is make on /usr/local/bin as cui command.

ARGUMENT

--version, --help, --license
Print version, help message, license.

--latest
findpy3 sub command only
Print latest python3 command path.

--later [PYTHONVERSION]
findpy3 sub command only
Print PYTHONVERSION later command path.

--older [PYTHONVERSION]
findpy3 sub command only
Print PYTHONVERSION older command path.

--range 3.xx-3.yy
findpy3 sub command only
Print latest python command path in 3.xx - 3.yy.

--order 3.x,...,3.yy
findpy3 sub command only
Print first matched python command path.

CONFIG

The Config is in restricted toml format.
OSCHECK: Describe OS names. The string is similar to 'uname -s' cmd.

default section, optional key.
Darwin: Mac OS
Linux: Linux based OS
FreeBSD: FreeBSD OS
OpenBSD: OpenBSD OS
e.g.
OSCHECK = ['Darwin', 'Linux', 'FreeBSD', 'OpenBSD']

DSTBASEDIR: Destination Base Directory.

Recommend path is '/usr/local/libexec/CMDNAME'.
default section, essential key.

INSTALLCMD: Install command path.

default path is '/usr/local/bin'.
default section, optional key.

CMDNAME001-CMDNAME999: The command name.

The command file is made on INSTALLCMD directory.
default section, optional key.

PY3TARGET001-PY3TARGET999: The python3 script path.

The script is executed by python3.xx cmd.
default section, optional key.
(Either of PY3TARGET001-999, CMDTARGET001-999 is always required.)

CMDTARGET001-CMDTARGET999: The command path.

Its command almost is shell script.
default section, optional key.
(Either of PY3TARGET001-999, CMDTARGET001-999 is always required.)

SHEBANG: The shebang of CMDNAME file.

default path is '/bin/sh'.
default section, optional key.

PY3VERSION: Execute python3 of the version. The string is similar to 'findpy3' options.

default section, optional key.
'3.x later'  : python 3.x later.
'3.x older'  : python 3.x older.
'latest'     : Latest python3
'3.xx - 3.yy': Latest python3 in 3.xx - 3.yy.
'3.6 3.7 3.8': First found python3 in 3.6, 3.7, 3.8.

SRCMANFILES: Source Man files.

default section, optional key.
The pair of SRCMANFILES and DSTMANDIR work together to install the run directory.
Enable to set plain type and gz compress type.
snakeland install one of plain and gz compress file by the platform.
e.g.
SRCMANFILES = ['man/snakeland.1.gz', 'man/snakeland.1']

DSTMANDIR: Destination Man directory.

default section, optional key.
The pair of SRCMANFILES and DSTMANDIR work together to install the run directory.
e.g.
DSTMANDIR = '/usr/local/share/man/man1'

DSTDIR: Relative path of DSTBASEDIR.

You cannot set it to a directory above the DSTBASEDIR.
source file section, essential key.

FMODE: File mode of the section file.

default mode is 644.
source file section, optional key.

Example of config:

DSTBASEDIR = '/usr/local/libexec/CMDNAMEAPP/'
PKGNAME    = 'CMDNAMEAPP'
CMDNAME001   = 'CMDNAMEAPP'
PY3TARGET001 = '/usr/local/libexec/CMDNAMEAPP/CMDNAMEAPP.py'

[script/CMDNAMEAPP.py]

DSTDIR = '.'

BUGS
Please report bugs to the issue tracker:

 <https://github.com/MikeTurkey/snakeland/issues>

or by e-mail: <voice[ATmark]miketurkey.com>

AUTHOR

MikeTurkey <voice[ATmark]miketurkey.com>

LICENSE

GPLv3 License including a prohibition clause for AI training.

COPYRIGHT
2023-2025, COPYRIGHT MikeTurkey, All Right Reserved.
ABSOLUTELY NO WARRANTY.
Document: GFDL1.3 License including a prohibition clause for AI training.
URL:  <https://miketurkey.com>