diff options
author | Norbert Preining <preining@logic.at> | 2009-07-03 15:27:37 +0000 |
---|---|---|
committer | Norbert Preining <preining@logic.at> | 2009-07-03 15:27:37 +0000 |
commit | 9167358afb2bd622448cf97615899cba00556bc5 (patch) | |
tree | 941e6c12cbc2bcfbc51f5097b67ac9e8d9ba7faf /Master/tlpkg/TeXLive/TLConfig.pm | |
parent | e14a9d60c5f2c2734d18d1d5e4f8464633ab9a60 (diff) |
the "Tokyo-Vienna-cramped-flight-commit":
- unify installer keys of the %vars hash to always use option_ prefix
if it is an option
- unify the layout of things in 00texlive.installation so that user settable
things look like opt_$key:vallue, and internal things setting_$key:vale
- add list of supported options to TLConfig, with type definitions
- use a unified option call
$tlpdb->option($key [, $value, $value])
instead of many different
$tlpdb->option_foo_bar
- adapt install-tl, uninstall-w32, tlmgr, tlpkg/bin, TeXLive::*, installer
plugins, to use this new function instead
- make the
setting_platform:XXXXX
(formerly platform:XXXXX) in 00texlive.installation only optional. It is
not saved into the TLPDB if the *default* platform as returned by
TeXLive::TLUtils::platform() (thus calling config.guess on unix). Only
if you override the platform in the installer with -force-arch then
this value is set in the TLPDB
- implement TLMedia->platform that checks first the included TLPDB for
option("platform"), and if that is not given determines the platform
using TLUtils::platform().
- move the add_symlinks and remove_symlinks from TLPDB to TLMedia
- sanatize the installer modules: perltk is now equivalent to text
- tlmgr:
. output of tlmgr option [show] does now show all the set options,
but ignores irrelevant ones for the respective platform
(sys_bin/man/info for win32, desktop_integration etc for unix)
. option handling rewritten in a general way so that we only have
to add new options to TLConfig::%TLPDBOptionXXXXX
. setting an option is verified against the types of the options
. implement
tlmgr option showall
that shows also options that are currently not set/saved in the TLPDB
- TLUtils: honor the w32_multi_user setting also for shortcuts and menu
items
- tlmgrgui:
. implement support for most options that are set in the TLPDB
. add buttons to remove/add symlinks
git-svn-id: svn://tug.org/texlive/trunk@14083 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/tlpkg/TeXLive/TLConfig.pm')
-rw-r--r-- | Master/tlpkg/TeXLive/TLConfig.pm | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/Master/tlpkg/TeXLive/TLConfig.pm b/Master/tlpkg/TeXLive/TLConfig.pm index eca234e5c96..536cbc33a50 100644 --- a/Master/tlpkg/TeXLive/TLConfig.pm +++ b/Master/tlpkg/TeXLive/TLConfig.pm @@ -32,6 +32,11 @@ BEGIN { $WindowsMainMenuName $RelocPrefix $RelocTree + %TLPDBSettingType + %TLPDBSettingDesc + %TLPDBOptionType + %TLPDBOptionDesc + %TLPDBOptionTlmgrName ); @EXPORT = @EXPORT_OK; } @@ -98,8 +103,76 @@ our @AllowedConfigOptions = qw/ autobackup /; +# +# definition of the option strings and their value types +# possible types are: +# - u: url +# - b: boolean, saved as 0/1 +# - p: path (local path) +# - n: naturnal number +# it allows n:[a]..[b] +# if a is empty start at -infty +# if b is empty end at +infty +# so "n:.." is equivalent to "n" + +# WARNING: keep these in sync! +# +our %TLPDBOptionTlmgrName = ( + "location" => "location", + "create_formats" => "formats", + "desktop_integration" => "deskint", + "file_assocs" => "fileassocs", + "post_code" => "postcode", + "sys_bin" => "sys_bin", + "sys_info" => "sys_info", + "sys_man" => "sys_man", + "install_docfiles" => "docfiles", + "install_srcfiles" => "srcfiles", + "w32_multi_user" => "multiuser", + "autobackup" => "autobackup", + "backupdir" => "backupdir"); +our %TLPDBOptionType = ( + "location" => "u", + "create_formats" => "b", + "desktop_integration" => "b", + "file_assocs" => "b", + "post_code" => "b", + "sys_bin" => "p", + "sys_info" => "p", + "sys_man" => "p", + "install_docfiles" => "b", + "install_srcfiles" => "b", + "w32_multi_user" => "b", + "autobackup" => "n:-1..", + "backupdir" => "p"); +our %TLPDBOptionDesc = ( + "location" => "Default installation location", + "create_formats" => "Create formats on installation", + "desktop_integration" => "Create shortcuts (menu and desktop) in postinst", + "file_assocs" => "Change file associations in postinst", + "post_code" => "Run postinst code blobs", + "sys_bin" => "Destination for symlinks for binaries", + "sys_info" => "Destination for symlinks for info docs", + "sys_man" => "Destination for symlinks for man pages", + "install_docfiles" => "Install documentation files", + "install_srcfiles" => "Install source files", + "w32_multi_user" => "Install for shortcuts/menu items for all users (w32)", + "autobackup" => "Number of backups to keep", + "backupdir" => "Directory for backups"); + +our %TLPDBSettingType = ( + "platform" => "s", + "available_architectures" => "l" +); +our %TLPDBSettingDesc = ( + "platform" => "Main platform for this computer", + "available_architectures" => "All available/installed architectures" +); + + our $WindowsMainMenuName = "TeX Live $ReleaseYear"; + 1; |