400 lines
18 KiB
ObjectPascal
400 lines
18 KiB
ObjectPascal
{
|
|
********************************************************************************
|
|
|
|
SPackGui
|
|
Copyright (C) 2012-2013 Geoffray Levasseur <geoffray.levasseurbrandin@numericable.fr>.
|
|
Copyright (C) <date> <add your name and mail address here>
|
|
|
|
http://0.tuxfamilly.org/
|
|
http://www.geoffray-levasseur.org/
|
|
|
|
This software is governed by the CeCILL license under French law and
|
|
abiding by the rules of distribution of free software. You can use,
|
|
modify and/ or redistribute the software under the terms of the CeCILL
|
|
license as circulated by CEA, CNRS and INRIA at the following URL
|
|
"http://www.cecill.info".
|
|
|
|
As a counterpart to the access to the source code and rights to copy,
|
|
modify and redistribute granted by the license, users are provided only
|
|
with a limited warranty and the software's author, the holder of the
|
|
economic rights, and the successive licensors have only limited
|
|
liability.
|
|
|
|
In this respect, the user's attention is drawn to the risks associated
|
|
with loading, using, modifying and/or developing or reproducing the
|
|
software by the user in light of its specific status of free software,
|
|
that may mean that it is complicated to manipulate, and that also
|
|
therefore means that it is reserved for developers and experienced
|
|
professionals having in-depth computer knowledge. Users are therefore
|
|
encouraged to load and test the software's suitability as regards their
|
|
requirements in conditions enabling the security of their systems and/or
|
|
data to be ensured and, more generally, to use and operate it in the
|
|
same conditions as regards security.
|
|
|
|
The fact that you are presently reading this means that you have had
|
|
knowledge of the CeCILL license and that you accept its terms.
|
|
|
|
********************************************************************************
|
|
|
|
Description:
|
|
Message and other non changeable string constant
|
|
|
|
********************************************************************************
|
|
}
|
|
unit uStrings;
|
|
|
|
{$include defines.inc}
|
|
|
|
interface
|
|
|
|
uses
|
|
uCommon;
|
|
|
|
const //some logfile const
|
|
dbgStatOk = '-';
|
|
dbgStatWarn = '!';
|
|
dbgOk = 'Ok';
|
|
dbgFail = 'Fail';
|
|
sTimeJump = ' '; //number of space = time length with braces
|
|
|
|
resourcestring //in case we use automatic i18n translation in the future
|
|
rsFullAppTitle = 'SPackGui';
|
|
|
|
//paths and files
|
|
rsSpackExt = '.SPACK';
|
|
rsPackageListFile = 'paquets.db';
|
|
rsAppListFile = 'applications.db';
|
|
rsDeprecatedFile = 'obsoletes.db';
|
|
rsFreeDesktopConfig = '.config';
|
|
rsHomeConfDir = 'spackgui';
|
|
|
|
//logfile prefixes
|
|
rsBaseError = '*** ERROR: ';
|
|
rsBaseWarning = '! WARNING: ';
|
|
rsBaseInfo = 'Info: ';
|
|
rsBaseDebug = '[Debug]: ';
|
|
|
|
//logfile messages
|
|
rsStackTrace = 'Stack trace:';
|
|
rsExceptionClass = 'Exception class: ';
|
|
rsMessage = 'Message: ';
|
|
rsHeapStatusDetails = 'Heap Status:' + LineEnding +
|
|
sTimeJump + ' - Addr Space: ' + #9 + ' %d ' + LineEnding +
|
|
sTimeJump + ' - Uncommitted: ' + #9 + ' %d ' + LineEnding +
|
|
sTimeJump + ' - Committed: ' + #9 + ' %d ' + LineEnding +
|
|
sTimeJump + ' - Allocated: ' + #9 + ' %d ' + LineEnding +
|
|
sTimeJump + ' - Free: ' + #9 + ' %d ' + LineEnding +
|
|
sTimeJump + ' - Free Small: ' + #9 + ' %d ' + LineEnding +
|
|
sTimeJump + ' - Free Big: ' + #9 + ' %d ' + LineEnding +
|
|
sTimeJump + ' - Unused: ' + #9 + ' %d ' + LineEnding +
|
|
sTimeJump + ' - Overhead: ' + #9 + ' %d ' + LineEnding +
|
|
sTimeJump + ' - Heap Errorcode: ' + #9 + ' %d ';
|
|
|
|
//units
|
|
rsByte = 'o';
|
|
rsGB = 'Go';
|
|
rsGiB = 'Gio';
|
|
rsMB = 'Mo';
|
|
rsMiB = 'Mio';
|
|
rsKB = 'ko';
|
|
rsKiB = 'Kio';
|
|
|
|
//configuration sections (should not be translated)
|
|
rsConfSectionCommand = 'Commands';
|
|
rsConfSectionPaths = 'Paths';
|
|
rsConfSectionProxy = 'Proxy';
|
|
rsConfSectionDisplay = 'Display';
|
|
rsConfSectionListViewColors = 'ListViewColors';
|
|
rsConfNameUpdatablePackageFont = 'UpdatablePackageFont';
|
|
rsConfNameUpdatablePackageBack = 'UpdatablePackageBack';
|
|
rsConfNameOutdatedPackageFont = 'OutdatedPackageFont';
|
|
rsConfNameOutdatedPackageBack = 'OutdatedPackageBack';
|
|
rsConfNamePackageToInstallFont = 'PackageToInstallFont';
|
|
rsConfNamePackageToInstallBack = 'PackageToInstallBack';
|
|
rsConfNamePackageToUpgradeFont = 'PackageToUpgradeFont';
|
|
rsConfNamePackageToUpgradeBack = 'PackageToUpgradeBack';
|
|
rsConfNamePackageToRemoveFont = 'PackageToRemoveFont';
|
|
rsConfNamePackageToRemoveBack = 'PackageToRemoveBack';
|
|
rsConfNameAddress = 'Address';
|
|
rsConfNameInstallCommand = 'Install';
|
|
rsConfNameReinstallCommand = 'Reinstall';
|
|
rsConfNameRemoveCommand = 'Remove';
|
|
rsConfNameUpdateCommand = 'Update';
|
|
rsConfNameInstPkgPath = 'InstalledPackages';
|
|
rsConfNamePkgDownloadPath = 'PackageDownload';
|
|
rsConfNameRepoDownloadPath = 'RepositoriesIndex';
|
|
rsConfNameHttpProxy = 'Http';
|
|
rsConfNameFtpProxy = 'Ftp';
|
|
rsConfNameLogFontName = 'LogFont.Name';
|
|
rsConfNameLogFontSize = 'LogFont.Size';
|
|
rsConfNameDefault = 'Default';
|
|
rsConfNameRepoDesc = 'Desc';
|
|
rsConfNameLeft = 'Left';
|
|
rsConfNameWidth = 'Width';
|
|
rsConfNameTop = 'Top';
|
|
rsConfNameHeight = 'Height';
|
|
rsConfNameMaximized = 'Maximized';
|
|
rsConfNameCount = 'Count';
|
|
rsConfNameDecimalUnits = 'DecimalUnits';
|
|
rsConfNameThousandsSep = 'ThousandsSeparator';
|
|
rsConfNameDecimalSep = 'DecimalSeparator';
|
|
rsConfNameListViewColumn = 'ListViewColumn';
|
|
rsConfNameHorizPanelLeft = 'HorizPanelLeft';
|
|
rsConfNameVertPanelTop = 'VertPanelTop';
|
|
rsConfNameFindHistory = 'FindHistory';
|
|
rsConfNameSortColumn = 'SortColumn';
|
|
rsConfNameSortAscending = 'SortAscending';
|
|
rsConfNameShowGrid = 'ShowGrid';
|
|
rsConfNameNoColors = 'NoColors';
|
|
|
|
//log messages (use english only)
|
|
rsInfoLoggingStarted = 'Logging started: "%s"';
|
|
rsInfoLoggingTerminated = 'Closing log file "%s": application terminated';
|
|
rsInfoShowingLogWin = 'i TfMain: Showing log window...';
|
|
rsInfoLoadingPackages = 'i TPackageList: Loading package list in "%s" ' +
|
|
'(%d found)...';
|
|
rsInfoDirLoadingPackages = 'i TPackageList: Loading packages in: "%s"...';
|
|
rsInfoDownloadingFile = 'i TPackageList: Downloading file "%s" in "%s"...';
|
|
rsInfoAddingDistantRepo = 'i TPackageList: Loading remote repo: "%s".';
|
|
rsInfoAddingLocalRepo = 'i TPackageList: Loading local repo: "%s".';
|
|
rsInfoAddedFileToDowload = 'i TPackageList: The file "%s" is now added to ' +
|
|
'download list.';
|
|
rsInfoLoadingLogFile = 'i TfLogFile: Loading log file: "%s".';
|
|
rsInfoInitializedDownload = 'i TDownloader: Initialized download of "%s": %s.';
|
|
rsInfoInitConfFile = 'i uCommon: Configuration file %s initialized.';
|
|
rsInfoRunningTest = 'i Main: Running in test mode.';
|
|
rsInfoRunningDebug = 'i Main: Running if debug mode.';
|
|
rsInfoShowingPackageInfo = 'i TfPackageProperty: Showing informations ' +
|
|
'about package "%s".';
|
|
rsInfoLoadingDistPackageInfo = 'i TPackageList: Loading package ' +
|
|
'informations in "%s"...';
|
|
rsInfoGetHttpProxySettings = 'i TfEnvironmentSettings: Getting HTTP proxy ' +
|
|
'settings from "%s".';
|
|
rsInfoGetFtpProxySettings = 'i TfEnvironmentSettings: Getting FTP proxy ' +
|
|
'settings from "%s".';
|
|
rsInfoDefaultRepo = 'i uCommon: Default repository is "%s"';
|
|
rsInfoLoadingRepoSettings = 'i uCommon: Loading repositories settings...';
|
|
rsInfoGetFileList = 'i TSPackPackage: Getting file list for package in "%s"...';
|
|
rsInfoFoundBrowser = 'i uUtils: Found browser: "%s"';
|
|
rsInfoStartLoggingDb = 'i TfMain: Logging of the full database starts here...';
|
|
rsInfoEndLoggingDb = 'i TfMain: Logging of the full database ends here...';
|
|
rsInfoLoadingDeprecated = 'i TPackageList: Loading deprecated package from ' +
|
|
'default repository "%s" in "%s".';
|
|
rsWarningNoLogfile = 'W uDebug: No log file will be created, ' +
|
|
'logging on stdout (console) only';
|
|
rsWarningDbgNotRoot = 'W Main: Running in non root mode.';
|
|
rsWarningConfWillBeLost = 'W Main: Any change in configuration will be lost.';
|
|
rsWarningNoPackageInfo = 'W TPackageList: No package information files ' +
|
|
'to download.';
|
|
rsWarningNoLocalRepository = 'W TPackageList: No local repository ' +
|
|
'configured yet.';
|
|
rsWarningNoDistantRepository = 'W TPackageList: No distant repository ' +
|
|
'configured yet.';
|
|
rsWarningNoFileList = 'W TSPackPackage: That package have no file list.';
|
|
rsErrorLogrotate = 'E uDebug: logrotate failed on file "%s"';
|
|
rsErrorUnhandledException = 'E uDebug: Unhandled exception:';
|
|
rsErrorButLogrotate = 'E uDebug: logrotate worked but the log file "%s" '+
|
|
'still exists';
|
|
rsErrorCreatingLogfile = 'E uDebug: could not create log file "%s"';
|
|
rsErrorWritingLogFile = 'E uDebug: unable to write in logfile "%s"';
|
|
rsErrorInThread = 'E uDebug: In thread: "%s"';
|
|
rsErrorPkgListIndex = 'E TPackageList: Index %n out of bounds.';
|
|
rsErrorCapacity = 'E TPackageList: Trying to set a wrong capacity %n.';
|
|
rsErrorUnableToLock = 'E Main: cannot lock the program: change will not be ' +
|
|
'allowed.';
|
|
rsErrorLoadingPackage = 'E TSpackPackage: Failed to load package ' +
|
|
'informations in %s.';
|
|
rsErrorLocalRepoNotFound = 'E TPackageList: Unavailable local repository "%s".';
|
|
rsErrorReadOnly = 'E Main: SPackGui was unable to find a path where it ' +
|
|
'can write its configuration files.';
|
|
rsErrorNoPackage = 'E TfMain: No packages have been found in "%s".';
|
|
rsErrorDownloadRepoFailed = 'E TPackageList: Downloading "%s" failed.';
|
|
rsErrorMalformedRepoDecl = 'E TPackageList: Malformed repository ' +
|
|
'declaration "%s".';
|
|
rsErrorCantGetFileSze = 'E TDownloadManager: Can''t get size of the file ' +
|
|
'at address "%s".';
|
|
rsErrorDownloadingFailed = 'E TDownloader: Can''t download the file at ' +
|
|
'address "%s".';
|
|
rsErrorDownloadIndex = 'E TDownloadListLoop: The download index %d is out ' +
|
|
'of range (< 0).';
|
|
rsErrorInvalidLine = 'E TPackageList: The file "%s" contains an invalid ' +
|
|
'line %d.';
|
|
rsErrorCantFindDeprecationFile = 'E TPackageList: Can''t find file "%s" for ' +
|
|
'deprecated packages of the default "%s" repository.';
|
|
rsErrorCannotSaveConf = 'E Unable to save configuration informations.';
|
|
rsDebugDownloadStarted = 'D TDownloader: Download started.';
|
|
rsDebugDownloadFinished = 'D TDownloader: Download terminated.';
|
|
rsDebugDownloadListLoopStarted = 'D TDownloadListLoop: Thread started.';
|
|
rsDebugDownloadListLoopStopped = 'D TDownloadListLoop: Thread terminated.';
|
|
rsDebugAddedToDownloadList = 'D TPackageManager: Added file "%s" to download ' +
|
|
'list.';
|
|
rsDebugInitializingNewFileForDownload = 'D TPackageManager: Initializing ' +
|
|
'informations for downloading file "%s".';
|
|
rsDebugSwitchedToNextFileForDownload = 'D TPackageManager: Switching to ' +
|
|
'next file index %d for download.';
|
|
rsDebugNodeAdded = 'D TfMain: Adding node "%s" to "%s".';
|
|
rsDebugDisplayingCategory = 'D TfMain: Selected category "%s" to display.';
|
|
rsDebugDownloadFeedback = 'D TDownloadManager: ';
|
|
|
|
//messagebox titles
|
|
rsDone = 'Done';
|
|
rsError = 'Error';
|
|
rsWarning = 'Warning';
|
|
rsQuestion = 'Question';
|
|
rsHelp = 'Help';
|
|
|
|
//messagebox contents
|
|
rsWarningNotRoot = 'It seems SPackGui have not been launched with ' +
|
|
'administrator permition (' + sRootUserName + '). Thus, You won''t be ' +
|
|
'authorized to apply any change to the system.' +
|
|
LineEnding + LineEnding +
|
|
'Log file will be placed in your personal directory instead of /var/log.';
|
|
rsWarningOtherInstance = 'An other instance of the program is running. ' +
|
|
'No change will be possible.';
|
|
rsErrorEqualForbidden = 'Symbol « = » (equal) is forbidden in object names.';
|
|
rsErrorDuplicateRepoName = 'Impossible to add a repository where name is ' +
|
|
'already in use.';
|
|
rsErrorQuoteForbidden = 'Symbol « " » (quote) is forbidden in addresses.';
|
|
rsErrorSearchSynthax = 'Syntax error in research field: an expression ' +
|
|
'can''t begin or end with an operator.';
|
|
rsLooseRepoChanges = 'You have made changes in repository list. Do you ' +
|
|
'want to loose those changes and close the window?';
|
|
rsNoPackageFound = 'No installed package have been found. ' + LineEnding +
|
|
'Unless you use that software for the very first time on a system not ' +
|
|
'using SPack as primary package manager, that situation is not normal.' +
|
|
'Anyway, you should check now your configuration before beginning.';
|
|
rsRegExprHelp = 'Regular expressions allows to do precise search using ' +
|
|
'inclusions, exclutions or complex strings. With a classic search every ' +
|
|
'word is independently search and they all must be present in then ' +
|
|
'package name or its description.' +
|
|
LineEnding + LineEnding +
|
|
'A regular expression admit the following operators:' + LineEnding +
|
|
' - The + symbol sticked to a word make it necessary' + LineEnding +
|
|
' - The - symbol sticked to a word exclude it' + LineEnding +
|
|
' - The & symbol between two words force presence of both words' +
|
|
LineEnding +
|
|
' - The | symbol between two words means we want at least one of the ' +
|
|
'two words ' + LineEnding +
|
|
' - The symbol # between two words we want one or the other word but ' +
|
|
'not both' + LineEnding +
|
|
' - Everything placed between two " (quotes) is evaluated as a single ' +
|
|
'word' + LineEnding + LineEnding +
|
|
'Exemples :' + LineEnding +
|
|
' +phonon -vlc: will look for anything containing phonon but not vlc' +
|
|
LineEnding +
|
|
' nvidia | ati: will look for anything containing nvidia or ati or both' +
|
|
LineEnding +
|
|
' vl | vd & lib: will look for anything containing vl or vd or both ' +
|
|
'and in any case will contain lib';
|
|
rsReloadPackagesAfterRepoChange = 'The repositories configuration have ' +
|
|
'been changed.' + LineEnding + LineEnding +
|
|
'If you want to take it into account, it is necessary to reload entirely ' +
|
|
'the package list.' + LineEnding + LineEnding +
|
|
'Do you want to reload package list now?';
|
|
rsReloadPackagesAfterEnvChange = 'You have changed one or more vital SPack ' +
|
|
'paths.' + LineEnding + LineEnding +
|
|
'If you want to take changes into account, it is required to reload ' +
|
|
'entirely the package list.' + LineEnding + LineEnding +
|
|
'Do you want to reload package list now?';
|
|
|
|
//Custom exception message
|
|
rsExceptPackageNameMismatch = 'TSPackPackage: Package name mismatch.';
|
|
rsExceptEmptyVersion = 'TSPackPackage: Empty package version is forbidden.';
|
|
rsExceptMaxPackageAlt = 'TSPackPackage: Reached maximum package alternatives.';
|
|
rsExceptEmptyAddress = 'TDownloader: The given URL is empty.';
|
|
rsExceptUnsupportedProtocol = 'TDownloader: The given protocol is not '+
|
|
'supported.';
|
|
rsExceptTest = 'TfMain: Test exception.';
|
|
rsExceptUnnamedPackage = 'TfMain: Found a package without name. Your ' +
|
|
'database is probably broken.';
|
|
rsExceptStringlistChange = 'Can''t change StringList while downloading.';
|
|
rsExceptChangeIndex = 'Can''t change index while downloading.';
|
|
|
|
//interface items
|
|
rsNewRepo = 'New repository';
|
|
rsChangeRepo = 'Change repository settings';
|
|
rsUnknowPackage = 'unknow';
|
|
rsStateAvailable = 'Available';
|
|
rsStateNotInstalled = 'Not installed';
|
|
rsStateInstalled = 'Installed';
|
|
rsStateUpgradable = 'To upgrade to version %s';
|
|
rsStateDeprecated = 'Deprecated: to be uninstalled with next upgrade';
|
|
rsSymlink = 'Symbolic link';
|
|
rsDirectory = 'Directory';
|
|
rsNotFound = 'Not found';
|
|
rsAllPackages = 'All the packages';
|
|
rsUncategorized = 'Uncategorized';
|
|
rsDownloadingFile = 'Downloading %s...';
|
|
rsDescNotInstalledPackage = 'Package description is available only for ' +
|
|
'installed package.';
|
|
rsUnitExample = 'Example: 5000 bytes are %s.';
|
|
{$IFDEF LCLQT}
|
|
rsQtVersion = 'You are using Qt version %s.';
|
|
{$ENDIF}
|
|
{$IFDEF LCLGTK2}
|
|
rsGtkVersion = 'You are using GTK version %d.%d.%d.';
|
|
{$ENDIF}
|
|
|
|
//address for package info search
|
|
rsGoogleSearch = 'http://www.google.fr/search?q=%s';
|
|
rsDebianSearch = 'http://packages.debian.org/search?keywords=%s';
|
|
rsLFSSearch = 'http://www.google.com/custom?client=pub-1920546463376456&' +
|
|
'cof=GALT%3A%23008000%3BGL%3A1%3BDIV%3A%23336699%3BVLC%3A663399%3BAH%3A' +
|
|
'center%3BBGC%3AFFFFFF%3BLBGC%3A336699%3BALC%3A0000FF%3BLC%3A0000FF%3BT' +
|
|
'%3A000000%3BGFNT%3A0000FF%3BGIMP%3A0000FF%3BLH%3A50%3BLW%3A128%3BL%3A' +
|
|
'http%3A%2F%2Fwww.linuxfromscratch.org%2Fimages%2Flfs-logo.png%3BS%3A' +
|
|
'http%3A%2F%2Fwww.traduc.org%3BFORID%3A1&domains=traduc.org&' +
|
|
'sa=Google+Search&sitesearch=traduc.org&q=';
|
|
rsArchSearch = 'https://www.archlinux.org/packages/?q=%s';
|
|
rsWikipediaSearch = 'http://en.wikipedia.org/w/index.php?search=%s';
|
|
rsSlackwareSearch = 'http://slackfind.net/en/packages/search/?name=%s';
|
|
rsGentooSearch = 'http://gpo.zugaina.org/Search?search=%s';
|
|
rsDebianPatchTracker = 'http://patch-tracker.debian.org/package/%s';
|
|
|
|
//Network status
|
|
rsNetStatResolving = 'Resolving ';
|
|
rsNetStatConnect = 'Connect ';
|
|
rsNetStatAccept = 'Accept ';
|
|
rsNetStatReadBytes = 'Read Bytes: ';
|
|
rsNetStatRequesting = 'Request sent, waiting for response';
|
|
|
|
//environment variables
|
|
rsEnvHttpProxy = 'http_proxy';
|
|
rsEnvFtpProxy = 'ftp_proxy';
|
|
rsEnvUser = 'USER';
|
|
rsEnvPath = 'PATH';
|
|
rsEnvGnomeSession = 'GNOME_DESKTOP_SESSION_ID';
|
|
rsEnvKDESession = 'KDE_FULL_SESSION';
|
|
rsEnvDesktopSession = 'DESKTOP_SESSION';
|
|
rsEnvUnixHomeDir = 'HOME';
|
|
|
|
//Database logging
|
|
rsLogNewPackage = '-- Package %s/%s';
|
|
rsLogDescription = 'Description: %s';
|
|
rsLogPackageAlt = '%d) Version: %s-%d sized %s from %s';
|
|
rsLogInstalled = ' (installed)';
|
|
rsLogDefault = ' (default)';
|
|
rsLogLatest = ' (latest)';
|
|
rsLogSep = '-----------------------';
|
|
|
|
//progression messages
|
|
rsProgressTidyPackageList = 'Tidying package list...';
|
|
rsProgressLoading = 'Loading...';
|
|
rsProgressInitDB = 'Initialization of the package database...';
|
|
rsProgressReadingInstalled = 'Reading installed packages...';
|
|
rsProgressReadingLocal = 'Reading local repositories...';
|
|
rsProgressDownloadingIndex = 'Downloading index files...';
|
|
rsProgressReadingDistant = 'Loading distant repositories...';
|
|
|
|
const
|
|
sCecillAddress = 'http://www.cecill.info/licences/Licence_CeCILL_V2-en.html';
|
|
|
|
sHttpPrefix = 'http://';
|
|
sFtpPrefix = 'ftp://';
|
|
|
|
|
|
implementation
|
|
|
|
end.
|
|
|