move WindowsInstaller to tools/build [skip ci]
BIN
tools/build/WindowsInstaller/Bitmaps/BackgroundBitmap.bmp
Normal file
|
After Width: | Height: | Size: 617 KiB |
BIN
tools/build/WindowsInstaller/Bitmaps/BanerBitmap.bmp
Normal file
|
After Width: | Height: | Size: 92 KiB |
95
tools/build/WindowsInstaller/Delete.bat
Normal file
@@ -0,0 +1,95 @@
|
||||
del /S *_d.*
|
||||
del /S *_debug.*
|
||||
del /S *.pyc
|
||||
del /S *.pdb
|
||||
del /S boost*-gd-*.dll
|
||||
cd bin
|
||||
del assistant.exe
|
||||
del Coin4d.dll
|
||||
del designer.exe
|
||||
del freetyped.dll
|
||||
del libcrypto-3d.dll
|
||||
del libEGLd.dll
|
||||
del libGLESv2d.dll
|
||||
del libssl-3d.dll
|
||||
del linguist.exe
|
||||
del qdoc.exe
|
||||
del Qt53DAnimationd.dll
|
||||
del Qt53DCored.dll
|
||||
del Qt53DExtrasd.dll
|
||||
del Qt53DInputd.dll
|
||||
del Qt53DLogicd.dll
|
||||
del Qt53DQuickAnimationd.dll
|
||||
del Qt53DQuickd.dll
|
||||
del Qt53DQuickExtrasd.dll
|
||||
del Qt53DQuickInputd.dll
|
||||
del Qt53DQuickRenderd.dll
|
||||
del Qt53DQuickScene2Dd.dll
|
||||
del Qt53DRenderd.dll
|
||||
del Qt5Bluetoothd.dll
|
||||
del Qt5Bodymovind.dll
|
||||
del Qt5Chartsd.dll
|
||||
del Qt5Concurrentd.dll
|
||||
del Qt5Cored.dll
|
||||
del Qt5DataVisualizationd.dll
|
||||
del Qt5DBusd.dll
|
||||
del Qt5DesignerComponentsd.dll
|
||||
del Qt5Designerd.dll
|
||||
del Qt5Gamepadd.dll
|
||||
del Qt5Guid.dll
|
||||
del Qt5Helpd.dll
|
||||
del Qt5Locationd.dll
|
||||
del Qt5Multimediad.dll
|
||||
del Qt5MultimediaQuickd.dll
|
||||
del Qt5MultimediaWidgetsd.dll
|
||||
del Qt5NetworkAuthd.dll
|
||||
del Qt5Networkd.dll
|
||||
del Qt5Nfcd.dll
|
||||
del Qt5OpenGLd.dll
|
||||
del Qt5Pdfd.dll
|
||||
del Qt5PdfWidgetsd.dll
|
||||
del Qt5Positioningd.dll
|
||||
del Qt5PositioningQuickd.dll
|
||||
del Qt5PrintSupportd.dll
|
||||
del Qt5Purchasingd.dll
|
||||
del Qt5Qmld.dll
|
||||
del Qt5QmlModelsd.dll
|
||||
del Qt5QmlWorkerScriptd.dll
|
||||
del Qt5Quick3DAssetImportd.dll
|
||||
del Qt5Quick3Dd.dll
|
||||
del Qt5Quick3DRenderd.dll
|
||||
del Qt5Quick3DRuntimeRenderd.dll
|
||||
del Qt5Quick3DUtilsd.dll
|
||||
del Qt5QuickControls2d.dll
|
||||
del Qt5Quickd.dll
|
||||
del Qt5QuickParticlesd.dll
|
||||
del Qt5QuickShapesd.dll
|
||||
del Qt5QuickTemplates2d.dll
|
||||
del Qt5QuickTestd.dll
|
||||
del Qt5QuickWidgetsd.dll
|
||||
del Qt5RemoteObjectsd.dll
|
||||
del Qt5Scriptd.dll
|
||||
del Qt5ScriptToolsd.dll
|
||||
del Qt5Scxmld.dll
|
||||
del Qt5Sensorsd.dll
|
||||
del Qt5SerialBusd.dll
|
||||
del Qt5SerialPortd.dll
|
||||
del Qt5Sqld.dll
|
||||
del Qt5Svgd.dll
|
||||
del Qt5Testd.dll
|
||||
del Qt5TextToSpeechd.dll
|
||||
del Qt5VirtualKeyboardd.dll
|
||||
del Qt5WebChanneld.dll
|
||||
del Qt5WebEngineCored.dll
|
||||
del Qt5WebEngined.dll
|
||||
del Qt5WebEngineWidgetsd.dll
|
||||
del Qt5WebSocketsd.dll
|
||||
del Qt5WebViewd.dll
|
||||
del Qt5Widgetsd.dll
|
||||
del Qt5WinExtrasd.dll
|
||||
del Qt5Xmld.dll
|
||||
del Qt5XmlPatternsd.dll
|
||||
del QtWebEngineProcessd.exe
|
||||
del Quarter1d.dll
|
||||
del xerces-c_3_2D.dll
|
||||
del zlibd.dll
|
||||
BIN
tools/build/WindowsInstaller/FCweborg.pfx
Normal file
74
tools/build/WindowsInstaller/FreeCAD-installer.nsi
Normal file
@@ -0,0 +1,74 @@
|
||||
/*
|
||||
FreeCAD Installer for Windows
|
||||
Author: Uwe Stöhr
|
||||
Compatible with NSIS 3.x
|
||||
*/
|
||||
|
||||
# Do a Cyclic Redundancy Check to make sure the installer
|
||||
# was not corrupted by the download.
|
||||
CRCCheck on
|
||||
|
||||
# make it a Unicode installer
|
||||
Unicode true
|
||||
|
||||
# enable support for high DPI resolution
|
||||
ManifestDPIAware true
|
||||
|
||||
# installer settings like version numbers
|
||||
!include settings.nsh
|
||||
|
||||
# declarations of FreeCAD's registry keys
|
||||
!include include\declarations.nsh
|
||||
|
||||
# Multi-User settings
|
||||
!define MULTIUSER_EXECUTIONLEVEL Highest
|
||||
!define MULTIUSER_INSTALLMODE_COMMANDLINE
|
||||
!define MULTIUSER_INSTALLMODE_DEFAULT_REGISTRY_KEY "${APP_UNINST_KEY}"
|
||||
!define MULTIUSER_INSTALLMODE_DEFAULT_REGISTRY_VALUENAME "DisplayVersion"
|
||||
|
||||
!define MULTIUSER_INSTALLMODE_INSTDIR "${APP_DIR}"
|
||||
!define MULTIUSER_INSTALLMODE_INSTDIR_REGISTRY_KEY "${APP_REGKEY}"
|
||||
!define MULTIUSER_INSTALLMODE_INSTDIR_REGISTRY_VALUENAME ""
|
||||
|
||||
!define MULTIUSER_INSTALLMODE_FUNCTION InitUser
|
||||
!define MULTIUSER_MUI
|
||||
|
||||
# included NSIS files
|
||||
!include InstallOptions.nsh
|
||||
!include LangFile.nsh
|
||||
!include Library.nsh
|
||||
!include LogicLib.nsh
|
||||
!include MUI2.nsh
|
||||
!include MultiUser.nsh
|
||||
!include Sections.nsh
|
||||
!include WinVer.nsh
|
||||
!include x64.nsh
|
||||
|
||||
# load the nsPprocess plugin
|
||||
!include nsProcess.nsh
|
||||
|
||||
# Set of various macros and functions
|
||||
!include include\utils.nsh
|
||||
|
||||
# set up the installer pages
|
||||
!include include\gui.nsh
|
||||
|
||||
# sets the install sections and checks the system on starting the un/installer
|
||||
!include include\init.nsh
|
||||
|
||||
# install FreeCAD and needed third-party programs like Python etc.
|
||||
!include setup\install.nsh
|
||||
|
||||
# uninstall FreeCAD and all programs that were installed together with FreeCAD
|
||||
!include setup\uninstall.nsh
|
||||
|
||||
# configure FreeCAD (set start menu and write registry entries)
|
||||
!include setup\configure.nsh
|
||||
|
||||
#--------------------------------
|
||||
# Output file
|
||||
|
||||
Outfile "${SETUP_EXE}"
|
||||
|
||||
# sign the installer executable
|
||||
!finalize 'signing.bat ${SETUP_EXE}'
|
||||
504
tools/build/WindowsInstaller/LICENSE
Normal file
@@ -0,0 +1,504 @@
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 2.1, February 1999
|
||||
|
||||
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
[This is the first released version of the Lesser GPL. It also counts
|
||||
as the successor of the GNU Library Public License, version 2, hence
|
||||
the version number 2.1.]
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
Licenses are intended to guarantee your freedom to share and change
|
||||
free software--to make sure the software is free for all its users.
|
||||
|
||||
This license, the Lesser General Public License, applies to some
|
||||
specially designated software packages--typically libraries--of the
|
||||
Free Software Foundation and other authors who decide to use it. You
|
||||
can use it too, but we suggest you first think carefully about whether
|
||||
this license or the ordinary General Public License is the better
|
||||
strategy to use in any particular case, based on the explanations below.
|
||||
|
||||
When we speak of free software, we are referring to freedom of use,
|
||||
not price. Our General Public Licenses are designed to make sure that
|
||||
you have the freedom to distribute copies of free software (and charge
|
||||
for this service if you wish); that you receive source code or can get
|
||||
it if you want it; that you can change the software and use pieces of
|
||||
it in new free programs; and that you are informed that you can do
|
||||
these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
distributors to deny you these rights or to ask you to surrender these
|
||||
rights. These restrictions translate to certain responsibilities for
|
||||
you if you distribute copies of the library or if you modify it.
|
||||
|
||||
For example, if you distribute copies of the library, whether gratis
|
||||
or for a fee, you must give the recipients all the rights that we gave
|
||||
you. You must make sure that they, too, receive or can get the source
|
||||
code. If you link other code with the library, you must provide
|
||||
complete object files to the recipients, so that they can relink them
|
||||
with the library after making changes to the library and recompiling
|
||||
it. And you must show them these terms so they know their rights.
|
||||
|
||||
We protect your rights with a two-step method: (1) we copyright the
|
||||
library, and (2) we offer you this license, which gives you legal
|
||||
permission to copy, distribute and/or modify the library.
|
||||
|
||||
To protect each distributor, we want to make it very clear that
|
||||
there is no warranty for the free library. Also, if the library is
|
||||
modified by someone else and passed on, the recipients should know
|
||||
that what they have is not the original version, so that the original
|
||||
author's reputation will not be affected by problems that might be
|
||||
introduced by others.
|
||||
|
||||
Finally, software patents pose a constant threat to the existence of
|
||||
any free program. We wish to make sure that a company cannot
|
||||
effectively restrict the users of a free program by obtaining a
|
||||
restrictive license from a patent holder. Therefore, we insist that
|
||||
any patent license obtained for a version of the library must be
|
||||
consistent with the full freedom of use specified in this license.
|
||||
|
||||
Most GNU software, including some libraries, is covered by the
|
||||
ordinary GNU General Public License. This license, the GNU Lesser
|
||||
General Public License, applies to certain designated libraries, and
|
||||
is quite different from the ordinary General Public License. We use
|
||||
this license for certain libraries in order to permit linking those
|
||||
libraries into non-free programs.
|
||||
|
||||
When a program is linked with a library, whether statically or using
|
||||
a shared library, the combination of the two is legally speaking a
|
||||
combined work, a derivative of the original library. The ordinary
|
||||
General Public License therefore permits such linking only if the
|
||||
entire combination fits its criteria of freedom. The Lesser General
|
||||
Public License permits more lax criteria for linking other code with
|
||||
the library.
|
||||
|
||||
We call this license the "Lesser" General Public License because it
|
||||
does Less to protect the user's freedom than the ordinary General
|
||||
Public License. It also provides other free software developers Less
|
||||
of an advantage over competing non-free programs. These disadvantages
|
||||
are the reason we use the ordinary General Public License for many
|
||||
libraries. However, the Lesser license provides advantages in certain
|
||||
special circumstances.
|
||||
|
||||
For example, on rare occasions, there may be a special need to
|
||||
encourage the widest possible use of a certain library, so that it becomes
|
||||
a de-facto standard. To achieve this, non-free programs must be
|
||||
allowed to use the library. A more frequent case is that a free
|
||||
library does the same job as widely used non-free libraries. In this
|
||||
case, there is little to gain by limiting the free library to free
|
||||
software only, so we use the Lesser General Public License.
|
||||
|
||||
In other cases, permission to use a particular library in non-free
|
||||
programs enables a greater number of people to use a large body of
|
||||
free software. For example, permission to use the GNU C Library in
|
||||
non-free programs enables many more people to use the whole GNU
|
||||
operating system, as well as its variant, the GNU/Linux operating
|
||||
system.
|
||||
|
||||
Although the Lesser General Public License is Less protective of the
|
||||
users' freedom, it does ensure that the user of a program that is
|
||||
linked with the Library has the freedom and the wherewithal to run
|
||||
that program using a modified version of the Library.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow. Pay close attention to the difference between a
|
||||
"work based on the library" and a "work that uses the library". The
|
||||
former contains code derived from the library, whereas the latter must
|
||||
be combined with the library in order to run.
|
||||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License Agreement applies to any software library or other
|
||||
program which contains a notice placed by the copyright holder or
|
||||
other authorized party saying it may be distributed under the terms of
|
||||
this Lesser General Public License (also called "this License").
|
||||
Each licensee is addressed as "you".
|
||||
|
||||
A "library" means a collection of software functions and/or data
|
||||
prepared so as to be conveniently linked with application programs
|
||||
(which use some of those functions and data) to form executables.
|
||||
|
||||
The "Library", below, refers to any such software library or work
|
||||
which has been distributed under these terms. A "work based on the
|
||||
Library" means either the Library or any derivative work under
|
||||
copyright law: that is to say, a work containing the Library or a
|
||||
portion of it, either verbatim or with modifications and/or translated
|
||||
straightforwardly into another language. (Hereinafter, translation is
|
||||
included without limitation in the term "modification".)
|
||||
|
||||
"Source code" for a work means the preferred form of the work for
|
||||
making modifications to it. For a library, complete source code means
|
||||
all the source code for all modules it contains, plus any associated
|
||||
interface definition files, plus the scripts used to control compilation
|
||||
and installation of the library.
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running a program using the Library is not restricted, and output from
|
||||
such a program is covered only if its contents constitute a work based
|
||||
on the Library (independent of the use of the Library in a tool for
|
||||
writing it). Whether that is true depends on what the Library does
|
||||
and what the program that uses the Library does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Library's
|
||||
complete source code as you receive it, in any medium, provided that
|
||||
you conspicuously and appropriately publish on each copy an
|
||||
appropriate copyright notice and disclaimer of warranty; keep intact
|
||||
all the notices that refer to this License and to the absence of any
|
||||
warranty; and distribute a copy of this License along with the
|
||||
Library.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy,
|
||||
and you may at your option offer warranty protection in exchange for a
|
||||
fee.
|
||||
|
||||
2. You may modify your copy or copies of the Library or any portion
|
||||
of it, thus forming a work based on the Library, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) The modified work must itself be a software library.
|
||||
|
||||
b) You must cause the files modified to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
c) You must cause the whole of the work to be licensed at no
|
||||
charge to all third parties under the terms of this License.
|
||||
|
||||
d) If a facility in the modified Library refers to a function or a
|
||||
table of data to be supplied by an application program that uses
|
||||
the facility, other than as an argument passed when the facility
|
||||
is invoked, then you must make a good faith effort to ensure that,
|
||||
in the event an application does not supply such function or
|
||||
table, the facility still operates, and performs whatever part of
|
||||
its purpose remains meaningful.
|
||||
|
||||
(For example, a function in a library to compute square roots has
|
||||
a purpose that is entirely well-defined independent of the
|
||||
application. Therefore, Subsection 2d requires that any
|
||||
application-supplied function or table used by this function must
|
||||
be optional: if the application does not supply it, the square
|
||||
root function must still compute square roots.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Library,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Library, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote
|
||||
it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Library.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Library
|
||||
with the Library (or with a work based on the Library) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may opt to apply the terms of the ordinary GNU General Public
|
||||
License instead of this License to a given copy of the Library. To do
|
||||
this, you must alter all the notices that refer to this License, so
|
||||
that they refer to the ordinary GNU General Public License, version 2,
|
||||
instead of to this License. (If a newer version than version 2 of the
|
||||
ordinary GNU General Public License has appeared, then you can specify
|
||||
that version instead if you wish.) Do not make any other change in
|
||||
these notices.
|
||||
|
||||
Once this change is made in a given copy, it is irreversible for
|
||||
that copy, so the ordinary GNU General Public License applies to all
|
||||
subsequent copies and derivative works made from that copy.
|
||||
|
||||
This option is useful when you wish to copy part of the code of
|
||||
the Library into a program that is not a library.
|
||||
|
||||
4. You may copy and distribute the Library (or a portion or
|
||||
derivative of it, under Section 2) in object code or executable form
|
||||
under the terms of Sections 1 and 2 above provided that you accompany
|
||||
it with the complete corresponding machine-readable source code, which
|
||||
must be distributed under the terms of Sections 1 and 2 above on a
|
||||
medium customarily used for software interchange.
|
||||
|
||||
If distribution of object code is made by offering access to copy
|
||||
from a designated place, then offering equivalent access to copy the
|
||||
source code from the same place satisfies the requirement to
|
||||
distribute the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
5. A program that contains no derivative of any portion of the
|
||||
Library, but is designed to work with the Library by being compiled or
|
||||
linked with it, is called a "work that uses the Library". Such a
|
||||
work, in isolation, is not a derivative work of the Library, and
|
||||
therefore falls outside the scope of this License.
|
||||
|
||||
However, linking a "work that uses the Library" with the Library
|
||||
creates an executable that is a derivative of the Library (because it
|
||||
contains portions of the Library), rather than a "work that uses the
|
||||
library". The executable is therefore covered by this License.
|
||||
Section 6 states terms for distribution of such executables.
|
||||
|
||||
When a "work that uses the Library" uses material from a header file
|
||||
that is part of the Library, the object code for the work may be a
|
||||
derivative work of the Library even though the source code is not.
|
||||
Whether this is true is especially significant if the work can be
|
||||
linked without the Library, or if the work is itself a library. The
|
||||
threshold for this to be true is not precisely defined by law.
|
||||
|
||||
If such an object file uses only numerical parameters, data
|
||||
structure layouts and accessors, and small macros and small inline
|
||||
functions (ten lines or less in length), then the use of the object
|
||||
file is unrestricted, regardless of whether it is legally a derivative
|
||||
work. (Executables containing this object code plus portions of the
|
||||
Library will still fall under Section 6.)
|
||||
|
||||
Otherwise, if the work is a derivative of the Library, you may
|
||||
distribute the object code for the work under the terms of Section 6.
|
||||
Any executables containing that work also fall under Section 6,
|
||||
whether or not they are linked directly with the Library itself.
|
||||
|
||||
6. As an exception to the Sections above, you may also combine or
|
||||
link a "work that uses the Library" with the Library to produce a
|
||||
work containing portions of the Library, and distribute that work
|
||||
under terms of your choice, provided that the terms permit
|
||||
modification of the work for the customer's own use and reverse
|
||||
engineering for debugging such modifications.
|
||||
|
||||
You must give prominent notice with each copy of the work that the
|
||||
Library is used in it and that the Library and its use are covered by
|
||||
this License. You must supply a copy of this License. If the work
|
||||
during execution displays copyright notices, you must include the
|
||||
copyright notice for the Library among them, as well as a reference
|
||||
directing the user to the copy of this License. Also, you must do one
|
||||
of these things:
|
||||
|
||||
a) Accompany the work with the complete corresponding
|
||||
machine-readable source code for the Library including whatever
|
||||
changes were used in the work (which must be distributed under
|
||||
Sections 1 and 2 above); and, if the work is an executable linked
|
||||
with the Library, with the complete machine-readable "work that
|
||||
uses the Library", as object code and/or source code, so that the
|
||||
user can modify the Library and then relink to produce a modified
|
||||
executable containing the modified Library. (It is understood
|
||||
that the user who changes the contents of definitions files in the
|
||||
Library will not necessarily be able to recompile the application
|
||||
to use the modified definitions.)
|
||||
|
||||
b) Use a suitable shared library mechanism for linking with the
|
||||
Library. A suitable mechanism is one that (1) uses at run time a
|
||||
copy of the library already present on the user's computer system,
|
||||
rather than copying library functions into the executable, and (2)
|
||||
will operate properly with a modified version of the library, if
|
||||
the user installs one, as long as the modified version is
|
||||
interface-compatible with the version that the work was made with.
|
||||
|
||||
c) Accompany the work with a written offer, valid for at
|
||||
least three years, to give the same user the materials
|
||||
specified in Subsection 6a, above, for a charge no more
|
||||
than the cost of performing this distribution.
|
||||
|
||||
d) If distribution of the work is made by offering access to copy
|
||||
from a designated place, offer equivalent access to copy the above
|
||||
specified materials from the same place.
|
||||
|
||||
e) Verify that the user has already received a copy of these
|
||||
materials or that you have already sent this user a copy.
|
||||
|
||||
For an executable, the required form of the "work that uses the
|
||||
Library" must include any data and utility programs needed for
|
||||
reproducing the executable from it. However, as a special exception,
|
||||
the materials to be distributed need not include anything that is
|
||||
normally distributed (in either source or binary form) with the major
|
||||
components (compiler, kernel, and so on) of the operating system on
|
||||
which the executable runs, unless that component itself accompanies
|
||||
the executable.
|
||||
|
||||
It may happen that this requirement contradicts the license
|
||||
restrictions of other proprietary libraries that do not normally
|
||||
accompany the operating system. Such a contradiction means you cannot
|
||||
use both them and the Library together in an executable that you
|
||||
distribute.
|
||||
|
||||
7. You may place library facilities that are a work based on the
|
||||
Library side-by-side in a single library together with other library
|
||||
facilities not covered by this License, and distribute such a combined
|
||||
library, provided that the separate distribution of the work based on
|
||||
the Library and of the other library facilities is otherwise
|
||||
permitted, and provided that you do these two things:
|
||||
|
||||
a) Accompany the combined library with a copy of the same work
|
||||
based on the Library, uncombined with any other library
|
||||
facilities. This must be distributed under the terms of the
|
||||
Sections above.
|
||||
|
||||
b) Give prominent notice with the combined library of the fact
|
||||
that part of it is a work based on the Library, and explaining
|
||||
where to find the accompanying uncombined form of the same work.
|
||||
|
||||
8. You may not copy, modify, sublicense, link with, or distribute
|
||||
the Library except as expressly provided under this License. Any
|
||||
attempt otherwise to copy, modify, sublicense, link with, or
|
||||
distribute the Library is void, and will automatically terminate your
|
||||
rights under this License. However, parties who have received copies,
|
||||
or rights, from you under this License will not have their licenses
|
||||
terminated so long as such parties remain in full compliance.
|
||||
|
||||
9. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Library or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Library (or any work based on the
|
||||
Library), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Library or works based on it.
|
||||
|
||||
10. Each time you redistribute the Library (or any work based on the
|
||||
Library), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute, link with or modify the Library
|
||||
subject to these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties with
|
||||
this License.
|
||||
|
||||
11. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Library at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Library by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Library.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under any
|
||||
particular circumstance, the balance of the section is intended to apply,
|
||||
and the section as a whole is intended to apply in other circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
12. If the distribution and/or use of the Library is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Library under this License may add
|
||||
an explicit geographical distribution limitation excluding those countries,
|
||||
so that distribution is permitted only in or among countries not thus
|
||||
excluded. In such case, this License incorporates the limitation as if
|
||||
written in the body of this License.
|
||||
|
||||
13. The Free Software Foundation may publish revised and/or new
|
||||
versions of the Lesser General Public License from time to time.
|
||||
Such new versions will be similar in spirit to the present version,
|
||||
but may differ in detail to address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Library
|
||||
specifies a version number of this License which applies to it and
|
||||
"any later version", you have the option of following the terms and
|
||||
conditions either of that version or of any later version published by
|
||||
the Free Software Foundation. If the Library does not specify a
|
||||
license version number, you may choose any version ever published by
|
||||
the Free Software Foundation.
|
||||
|
||||
14. If you wish to incorporate parts of the Library into other free
|
||||
programs whose distribution conditions are incompatible with these,
|
||||
write to the author to ask for permission. For software which is
|
||||
copyrighted by the Free Software Foundation, write to the Free
|
||||
Software Foundation; we sometimes make exceptions for this. Our
|
||||
decision will be guided by the two goals of preserving the free status
|
||||
of all derivatives of our free software and of promoting the sharing
|
||||
and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
|
||||
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
|
||||
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
|
||||
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
|
||||
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
|
||||
LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
|
||||
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||
|
||||
16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
|
||||
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
|
||||
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
|
||||
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
|
||||
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
|
||||
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
|
||||
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
|
||||
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
|
||||
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
||||
DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Libraries
|
||||
|
||||
If you develop a new library, and you want it to be of the greatest
|
||||
possible use to the public, we recommend making it free software that
|
||||
everyone can redistribute and change. You can do so by permitting
|
||||
redistribution under these terms (or, alternatively, under the terms of the
|
||||
ordinary General Public License).
|
||||
|
||||
To apply these terms, attach the following notices to the library. It is
|
||||
safest to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least the
|
||||
"copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the library's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
|
||||
USA
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the library, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the
|
||||
library `Frob' (a library for tweaking knobs) written by James Random
|
||||
Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1990
|
||||
Ty Coon, President of Vice
|
||||
|
||||
That's all there is to it!
|
||||
84
tools/build/WindowsInstaller/License.rtf
Normal file
60
tools/build/WindowsInstaller/README.md
Normal file
@@ -0,0 +1,60 @@
|
||||
# Creating a Windows installer for FreeCAD
|
||||
|
||||
These are instructions for building an NSIS-based installer for FreeCAD. They were designed for FreeCAD 0.21 and later,
|
||||
and presume that you have cloned a copy of FreeCAD's source code, and therefore have the directory *src/WindowsInstaller*.
|
||||
|
||||
## Install NSIS
|
||||
To set up your system for building an NSIS installer:
|
||||
1. Install the latest version 3.x of NSIS (https://nsis.sourceforge.io/Download)
|
||||
2. Download these special release files of NSIS that support large strings:</br>
|
||||
https://nsis.sourceforge.io/Special_Builds#Large_strings</br>
|
||||
and copy the contained files into the corresponding NSIS installations folders
|
||||
3. Download these special release files of NSIS that support logging:</br>
|
||||
https://nsis.sourceforge.io/Special_Builds#Advanced_logging</br>
|
||||
and copy the contained files into the corresponding NSIS installations folders
|
||||
4. Download and install the nsProcess plugin from https://nsis.sourceforge.io/NsProcess_plugin -- you will need the version that supports Unicode, so make sure to follow the appropriate instructions on their site to install that one (as of this writing it involves manually copying and renaming the plugin DLL file).
|
||||
|
||||
## Build the installer
|
||||
Next, update the installer settings for the current version of FreeCAD. Starting from the *src/WindowsInstaller* folder in the FreeCAD source tree:
|
||||
1. Set the appropriate version strings for the release you are creating. These are used to construct the filename of the installer, among other things. If you have to upload a new version of the installer for the exact same release of FreeCAD, increment `APP_VERSION BUILD` as needed.
|
||||
```
|
||||
!define APP_VERSION_MAJOR 0
|
||||
!define APP_VERSION_MINOR 21
|
||||
!define APP_VERSION_REVISION 0
|
||||
!define APP_VERSION_EMERGENCY "RC1"
|
||||
!define APP_VERSION_BUILD 1
|
||||
```
|
||||
2. Within the folder *src/WindowsInstaller*, create a new folder called MSVCRedist and copy the following files from your MSVC installation into it:
|
||||
```
|
||||
vcruntime140.dll
|
||||
concrt140.dll
|
||||
msvcp140.dll
|
||||
vcamp140.dll
|
||||
vccorlib140.dll
|
||||
vcomp140.dll
|
||||
```
|
||||
3. Open the file *Settings.nsh* with a text editor (both jEdit and Visual Studio Code are good editors for NSIS files). Edit the following paths to correspond to your system: `FILES_FREECAD` corresponds to your installation directory (e.g. `CMAKE_INSTALL_PREFIX` if you self-compiled) and `FILES_DEPS` is the folder you created with the MSVC redistributable files in it.
|
||||
```
|
||||
!define FILES_FREECAD "C:\FreeCAD\Installer\FreeCAD"
|
||||
!define FILES_DEPS "C:\FreeCAD\Installer\MSVCRedist"
|
||||
```
|
||||
4. Ensure the FreeCAD files are in place. Here you have two options:
|
||||
* If you are working from an already-compiled version of FreeCAD provided to you by an outside source: in this case, simply ensure that `FILES_FREECAD` is set to the directory containing those files.
|
||||
* If you compiled FreeCAD on your own as described [here](https://wiki.freecad.org/Compile_on_Windows) (and using the Install option outlined there). Then:
|
||||
* Open the file *Settings.nsh* as described in step 3. above and set there</br>
|
||||
`!define FILES_FREECAD` to the folder you specified as `CMAKE_INSTALL_PREFIX`
|
||||
* Copy into that folder the file *Delete.bat* that is part of the installer
|
||||
* open a command line in Windows and change to the folder
|
||||
* run the comamand</br>
|
||||
`Delete.bat`
|
||||
* (These steps assure that the installer only contains files users need. Moreover it assures that the
|
||||
overall files size is below 2 GB and we can use the most compact compression for the installer.)
|
||||
5. Right-click on the file *FreeCAD-installer.nsi* and choose **Compile NSIS script**
|
||||
to compile the installer.
|
||||
|
||||
|
||||
NOTE: For test builds of the installer you can turn off the compression. This speeds up
|
||||
the build time for the installer a lot but increases its file size. The compression
|
||||
is turned off by uncommenting the line</br>
|
||||
`SetCompressor /SOLID lzma`</br>
|
||||
in the file *Settings.nsh*.
|
||||
46
tools/build/WindowsInstaller/Settings.nsh
Normal file
@@ -0,0 +1,46 @@
|
||||
/*
|
||||
|
||||
Settings for FreeCAD installer
|
||||
|
||||
These typically need to be modified for each FreeCAD release
|
||||
|
||||
*/
|
||||
|
||||
# Make the installer as small as possible
|
||||
# comment this for testing builds since it will reduce the time to create an installer
|
||||
# a lot - for the cost of a much greater file size.
|
||||
# So assure it is active for release builds!
|
||||
SetCompressor /SOLID lzma
|
||||
|
||||
#--------------------------------
|
||||
# Version number
|
||||
|
||||
!define APP_VERSION_MAJOR 0
|
||||
!define APP_VERSION_MINOR 22
|
||||
!define APP_VERSION_REVISION 0
|
||||
!define APP_VERSION_EMERGENCY "beta" # use "1" for an emergency release of FreeCAD otherwise ""
|
||||
# alternatively you can use APP_VERSION_EMERGENCY for a custom suffix of the version number
|
||||
!define APP_EMERGENCY_DOT "" # use "." for an emergency release of FreeCAD otherwise ""
|
||||
!define APP_VERSION_BUILD 1 # Start with 1 for the installer releases of each version
|
||||
|
||||
!define APP_VERSION "${APP_VERSION_MAJOR}.${APP_VERSION_MINOR}.${APP_VERSION_REVISION}${APP_EMERGENCY_DOT}${APP_VERSION_EMERGENCY}" # Version to display
|
||||
|
||||
!define COPYRIGHT_YEAR 2023
|
||||
|
||||
#--------------------------------
|
||||
# Installer file name
|
||||
# Typical names for the release are "FreeCAD-020-Installer-1.exe" etc.
|
||||
|
||||
!define ExeFile "${APP_NAME}-${APP_VERSION_MAJOR}.${APP_VERSION_MINOR}.${APP_VERSION_REVISION}${APP_VERSION_EMERGENCY}-WIN-x64-installer-${APP_VERSION_BUILD}.exe"
|
||||
|
||||
#--------------------------------
|
||||
# installer bit type - FreeCAD is only provided as 64bit build
|
||||
!define MULTIUSER_USE_PROGRAMFILES64
|
||||
|
||||
#--------------------------------
|
||||
# File locations
|
||||
# !!! you need to adjust them to the folders in your Windows system !!!
|
||||
|
||||
!define FILES_FREECAD "G:\FreeCADInst\Installer\FreeCAD"
|
||||
!define FILES_DEPS "G:\FreeCADInst\Installer\MSVCRedist"
|
||||
!define FILES_THUMBS "G:\FreeCADInst\Installer\thumbnail"
|
||||
1
tools/build/WindowsInstaller/Signing.bat
Normal file
@@ -0,0 +1 @@
|
||||
signtool.exe sign /f FCweborg.pfx /p FreeCADIsCool /fd sha512 /tr http://timestamp.digicert.com /td sha512 /v %1
|
||||
BIN
tools/build/WindowsInstaller/graphics/header.bmp
Normal file
|
After Width: | Height: | Size: 25 KiB |
BIN
tools/build/WindowsInstaller/graphics/orange.bmp
Normal file
|
After Width: | Height: | Size: 151 KiB |
BIN
tools/build/WindowsInstaller/icons/FreeCAD-clean.ico
Normal file
|
After Width: | Height: | Size: 66 KiB |
BIN
tools/build/WindowsInstaller/icons/FreeCAD-icon-57px-height.bmp
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
tools/build/WindowsInstaller/icons/FreeCAD-icon.bmp
Normal file
|
After Width: | Height: | Size: 64 KiB |
BIN
tools/build/WindowsInstaller/icons/FreeCAD-icon.xcf
Normal file
BIN
tools/build/WindowsInstaller/icons/FreeCAD.ico
Normal file
|
After Width: | Height: | Size: 90 KiB |
82
tools/build/WindowsInstaller/include/declarations.nsh
Normal file
@@ -0,0 +1,82 @@
|
||||
/*
|
||||
declaration.nsh
|
||||
|
||||
Configuration and variables of FreeCAD installer
|
||||
*/
|
||||
|
||||
#--------------------------------
|
||||
# File locations
|
||||
|
||||
!define FILES_LICENSE "license.rtf"
|
||||
|
||||
#--------------------------------
|
||||
# Names and version
|
||||
|
||||
!define APP_NAME "FreeCAD"
|
||||
!define APP_VERSION_NUMBER "${APP_VERSION_MAJOR}.${APP_VERSION_MINOR}.${APP_VERSION_REVISION}.${APP_VERSION_BUILD}"
|
||||
# For the proposed install folder we use the scheme "FreeCAD 0.18"
|
||||
# however for the Registry, we need the scheme "FreeCAD 0.18.x" in order
|
||||
# to check if it is exactly this version (to support side-by-side installations)
|
||||
!define APP_SERIES_NAME "${APP_VERSION_MAJOR}.${APP_VERSION_MINOR}"
|
||||
!define APP_SERIES_KEY "${APP_VERSION_MAJOR}${APP_VERSION_MINOR}${APP_VERSION_REVISION}${APP_VERSION_EMERGENCY}"
|
||||
!define APP_SERIES_KEY2 "${APP_VERSION_MAJOR}.${APP_VERSION_MINOR}.${APP_VERSION_REVISION}${APP_EMERGENCY_DOT}${APP_VERSION_EMERGENCY}"
|
||||
!define APP_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\${APP_NAME}.exe"
|
||||
!define APP_DIR "${APP_NAME} ${APP_SERIES_NAME}"
|
||||
# Fixme: FC should use different preferences folder for every release
|
||||
!define APP_DIR_USERDATA ${APP_NAME}
|
||||
#!define APP_DIR_USERDATA "${APP_NAME}${APP_VERSION_MAJOR}.${APP_VERSION_MINOR}"
|
||||
!define APP_SHORTCUT_INFO "${APP_NAME} - Your Own 3D Parametric Modeler"
|
||||
!define APP_INFO "Install/Uninstall ${APP_NAME}"
|
||||
!define APP_WEBPAGE "https://www.freecad.org/"
|
||||
!define APP_WEBPAGE_INFO "${APP_NAME} Website"
|
||||
!define APP_WIKI "https://wiki.freecad.org/Main_Page"
|
||||
!define APP_WIKI_INFO "${APP_NAME} Wiki"
|
||||
!define APP_COPYRIGHT "${APP_NAME} is Copyright © 2001-${COPYRIGHT_YEAR} by the ${APP_NAME} Team"
|
||||
|
||||
!define APP_RUN "bin\${APP_NAME}.exe"
|
||||
!define BIN_FREECAD "${APP_NAME}.exe"
|
||||
|
||||
!define APP_REGKEY "SOFTWARE\${APP_NAME}${APP_SERIES_KEY}" # like "FreeCAD0180"
|
||||
!define APP_REGKEY_SETUP "${APP_REGKEY}\Setup"
|
||||
!define APP_REGKEY_SETTINGS "${APP_REGKEY}\Settings"
|
||||
|
||||
!define APP_REGNAME_DOC "${APP_NAME}.Document"
|
||||
|
||||
!define APP_EXT ".FCStd"
|
||||
!define APP_EXT1 ".FCStd1"
|
||||
!define APP_MIME_TYPE "application/x-zip-compressed"
|
||||
|
||||
!define APP_EXT_BAK ".FCBak"
|
||||
!define APP_EXT_MACRO ".FCMacro"
|
||||
!define APP_EXT_MAT ".FCMat"
|
||||
!define APP_EXT_SCRIPT ".FCScript"
|
||||
|
||||
!define APP_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${SETUP_UNINSTALLER_KEY}"
|
||||
|
||||
#--------------------------------
|
||||
# Setup settings
|
||||
|
||||
!define SETUP_EXE ${ExeFile}
|
||||
|
||||
!define SETUP_ICON "icons\FreeCAD.ico"
|
||||
!define SETUP_HEADERIMAGE "graphics\header.bmp"
|
||||
!define SETUP_WIZARDIMAGE "graphics\orange.bmp"
|
||||
!define SETUP_UNINSTALLER "Uninstall-${APP_NAME}.exe"
|
||||
!define SETUP_UNINSTALLER_KEY "${APP_NAME}${APP_SERIES_KEY}"
|
||||
|
||||
#--------------------------------
|
||||
# Variables that are shared between multiple files
|
||||
|
||||
Var APPDATemp
|
||||
Var AppPre
|
||||
var AppSubfolder
|
||||
Var AppSuff
|
||||
Var CreateDesktopIcon
|
||||
Var CreateFileAssociations
|
||||
Var OldVersionNumber
|
||||
Var Pointer
|
||||
Var Search
|
||||
Var StartmenuFolder
|
||||
Var String
|
||||
Var UserList
|
||||
Var LangName
|
||||
100
tools/build/WindowsInstaller/include/gui.nsh
Normal file
@@ -0,0 +1,100 @@
|
||||
/*
|
||||
|
||||
gui.nsh
|
||||
|
||||
Installer user interface settings
|
||||
|
||||
*/
|
||||
|
||||
#--------------------------------
|
||||
# General
|
||||
|
||||
Name "${APP_NAME} ${APP_VERSION}"
|
||||
BrandingText " "
|
||||
|
||||
#--------------------------------
|
||||
# Interface settings
|
||||
|
||||
!define MUI_ABORTWARNING
|
||||
!define MUI_ICON "${SETUP_ICON}"
|
||||
!define MUI_UNICON "${SETUP_ICON}"
|
||||
!define MUI_HEADERIMAGE
|
||||
!define MUI_HEADERIMAGE_BITMAP "${SETUP_HEADERIMAGE}"
|
||||
!define MUI_HEADERIMAGE_RIGHT
|
||||
!define MUI_WELCOMEFINISHPAGE_BITMAP "${SETUP_WIZARDIMAGE}"
|
||||
!define MUI_UNWELCOMEFINISHPAGE_BITMAP "${SETUP_WIZARDIMAGE}"
|
||||
|
||||
#--------------------------------
|
||||
# Pages
|
||||
|
||||
# Installer
|
||||
|
||||
# Welcome page
|
||||
!define MUI_WELCOMEPAGE_TEXT $(TEXT_WELCOME)
|
||||
!insertmacro MUI_PAGE_WELCOME
|
||||
# Show the license.
|
||||
!define MUI_LICENSEPAGE_BUTTON $(^NextBtn)
|
||||
!define MUI_LICENSEPAGE_TEXT_BOTTOM " "
|
||||
!insertmacro MUI_PAGE_LICENSE "${FILES_LICENSE}"
|
||||
|
||||
# Select install mode
|
||||
# set custom function for additional checks after the user selected the install mode
|
||||
# note: will not be called in silent mode
|
||||
!define MULTIUSER_PAGE_CUSTOMFUNCTION_LEAVE PostMultiUserPageInit
|
||||
!insertmacro MULTIUSER_PAGE_INSTALLMODE
|
||||
|
||||
# Specify the installation directory.
|
||||
!insertmacro MUI_PAGE_DIRECTORY
|
||||
|
||||
# Define which components to install.
|
||||
!insertmacro MUI_PAGE_COMPONENTS
|
||||
|
||||
# Specify where to install program shortcuts.
|
||||
!define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "Start Menu Folder"
|
||||
!define MUI_STARTMENUPAGE_DEFAULTFOLDER "${APP_DIR}"
|
||||
!insertmacro MUI_PAGE_STARTMENU ${APP_NAME} $StartmenuFolder
|
||||
|
||||
# Watch the components being installed.
|
||||
!insertmacro MUI_PAGE_INSTFILES
|
||||
|
||||
# The option to run FreeCAD from the finish page is currently disabled because
|
||||
# it may run with Administrator priviledges, therefore causing a different
|
||||
# user directory to be used. This could be fixed by creating a separate
|
||||
# process without UAC elevation.
|
||||
#!define MUI_FINISHPAGE_RUN_TEXT "$(FinishPageRun)"
|
||||
#!define MUI_FINISHPAGE_RUN "$INSTDIR\${APP_RUN}"
|
||||
|
||||
!define MUI_FINISHPAGE_SHOWREADME
|
||||
!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
|
||||
!define MUI_FINISHPAGE_SHOWREADME_FUNCTION StartFreeCAD
|
||||
!define MUI_FINISHPAGE_SHOWREADME_TEXT $(FinishPageRun)
|
||||
!define MUI_FINISHPAGE_LINK $(TEXT_FINISH_WEBSITE)
|
||||
!define MUI_FINISHPAGE_LINK_LOCATION "https://www.freecad.org/"
|
||||
#!define MUI_PAGE_CUSTOMFUNCTION_SHOW CheckDesktopShortcut
|
||||
!insertmacro MUI_PAGE_FINISH
|
||||
|
||||
# Uninstaller
|
||||
|
||||
!insertmacro MUI_UNPAGE_WELCOME
|
||||
!insertmacro MUI_UNPAGE_CONFIRM
|
||||
!insertmacro MUI_UNPAGE_COMPONENTS
|
||||
!insertmacro MUI_UNPAGE_INSTFILES
|
||||
|
||||
!insertmacro MUI_UNPAGE_FINISH
|
||||
|
||||
#--------------------------------
|
||||
# Installer Languages
|
||||
|
||||
!include lang\TranslatedLanguages.nsh
|
||||
|
||||
#--------------------------------
|
||||
# Version information
|
||||
|
||||
VIProductVersion "${APP_VERSION_NUMBER}"
|
||||
VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductName" "${APP_NAME}"
|
||||
VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductVersion" "${APP_DIR}.${APP_VERSION_REVISION}"
|
||||
VIAddVersionKey /LANG=${LANG_ENGLISH} "FileDescription" "${APP_INFO}"
|
||||
VIAddVersionKey /LANG=${LANG_ENGLISH} "FileVersion" "${APP_VERSION}"
|
||||
VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalCopyright" "${APP_COPYRIGHT}"
|
||||
VIAddVersionKey /LANG=${LANG_ENGLISH} "CompanyName" "${APP_NAME} Team"
|
||||
VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalTrademarks" ""
|
||||
197
tools/build/WindowsInstaller/include/init.nsh
Normal file
@@ -0,0 +1,197 @@
|
||||
/*
|
||||
init.nsh
|
||||
|
||||
Initialization functions
|
||||
*/
|
||||
|
||||
#--------------------------------
|
||||
# User initialization
|
||||
|
||||
Var FCLangName
|
||||
|
||||
Function InitUser
|
||||
|
||||
# Get FreeCAD language
|
||||
|
||||
ReadRegStr $FCLangName SHELL_CONTEXT "${APP_REGKEY_SETUP}" "FreeCAD Language"
|
||||
|
||||
${If} $FCLangName != ""
|
||||
StrCpy $LangName $FCLangName
|
||||
${EndIf}
|
||||
|
||||
FunctionEnd
|
||||
|
||||
#--------------------------------
|
||||
# MultiUser custom method
|
||||
|
||||
Function PostMultiUserPageInit
|
||||
# check if this FreeCAD version is already installed
|
||||
ReadRegStr $0 SHCTX "${APP_UNINST_KEY}" "UninstallString"
|
||||
${if} $0 != ""
|
||||
# check if the uninstaller was acidentally deleted
|
||||
# if so, don't bother the user if they really want to install a new FreeCAD over an existing one
|
||||
# because they won't have a chance to deny this
|
||||
|
||||
# remove quotes from uninstaller filename
|
||||
${TrimQuotes} $0 $0
|
||||
# skip message box if uninstaller file is missing
|
||||
IfFileExists $0 0 ContinueInstall
|
||||
|
||||
# installing over an existing installation of the same FreeCAD release is not necessary
|
||||
# if the users does this, they most probably have a problem with FreeCAD that can better be solved
|
||||
# by reinstalling FreeCAD
|
||||
# for beta and other test releases over-installing can even cause errors
|
||||
MessageBox MB_YESNOCANCEL "$(AlreadyInstalled)" /SD IDCANCEL IDYES ContinueInstall IDNO BackToMuiltUserPage
|
||||
Quit
|
||||
BackToMuiltUserPage:
|
||||
Abort
|
||||
ContinueInstall:
|
||||
${endif}
|
||||
|
||||
# check if there is an existing FreeCAD installation of the same FreeCAD series
|
||||
# we usually don't release more than 10 versions so with 20 we are safe to check if a newer version is installed
|
||||
IntOp $4 ${APP_VERSION_REVISION} + 20
|
||||
${for} $5 0 $4
|
||||
ReadRegStr $0 SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APP_NAME}${APP_VERSION_MAJOR}${APP_VERSION_MINOR}$5" "DisplayVersion"
|
||||
# also check for an emergency release
|
||||
${if} $0 == ""
|
||||
ReadRegStr $0 SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APP_NAME}${APP_VERSION_MAJOR}${APP_VERSION_MINOR}$51" "DisplayVersion"
|
||||
${endif}
|
||||
${if} $0 != ""
|
||||
StrCpy $R5 $0 # store the read version number
|
||||
StrCpy $OldVersionNumber "${APP_VERSION_MAJOR}${APP_VERSION_MINOR}$5"
|
||||
# we don't stop here because we want the latest installed version
|
||||
${endif}
|
||||
${next}
|
||||
|
||||
# NSIS cannot handle numbers with leading zero, thus cut it off before comparing
|
||||
StrCpy $1 $OldVersionNumber "" 1
|
||||
StrCpy $2 ${APP_SERIES_KEY} "" 1
|
||||
${if} $1 > $2
|
||||
# store the version number and reformat it temporarily for the error message
|
||||
StrCpy $R0 $OldVersionNumber
|
||||
StrCpy $OldVersionNumber $R5
|
||||
MessageBox MB_OK|MB_ICONSTOP "$(NewerInstalled)" /SD IDOK
|
||||
StrCpy $OldVersionNumber $R0
|
||||
Quit
|
||||
${endif}
|
||||
FunctionEnd
|
||||
|
||||
|
||||
#--------------------------------
|
||||
# visible installer sections
|
||||
|
||||
Section "!${APP_NAME}" SecCore
|
||||
SectionIn RO
|
||||
SectionEnd
|
||||
|
||||
Section "$(SecFileAssocTitle)" SecFileAssoc
|
||||
StrCpy $CreateFileAssociations "true"
|
||||
SectionEnd
|
||||
|
||||
Section "$(SecDesktopTitle)" SecDesktop
|
||||
StrCpy $CreateDesktopIcon "true"
|
||||
SectionEnd
|
||||
|
||||
# Section descriptions
|
||||
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${SecCore} "$(SecCoreDescription)"
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${SecFileAssoc} "$(SecFileAssocDescription)"
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${SecDesktop} "$(SecDesktopDescription)"
|
||||
!insertmacro MUI_FUNCTION_DESCRIPTION_END
|
||||
|
||||
|
||||
# .onInit must be here after the section definition because we have to set
|
||||
# the selection states of the dictionary sections
|
||||
Function .onInit
|
||||
|
||||
ReadRegStr $R0 HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion
|
||||
${if} $R0 == "5.0" # 2000
|
||||
${orif} $R0 == "5.1" # XP
|
||||
${orif} $R0 == "5.2" # 2003
|
||||
${orif} $R0 == "6.0" # Vista
|
||||
MessageBox MB_OK|MB_ICONSTOP "${APP_NAME} ${APP_VERSION} requires Windows 7 or newer." /SD IDOK
|
||||
Quit
|
||||
${endif}
|
||||
|
||||
# check if it is a 64bit system
|
||||
${if} ${RunningX64}
|
||||
SetRegView 64
|
||||
!define LIBRARY_X64
|
||||
${endif}
|
||||
|
||||
# Check that FreeCAD is not currently running
|
||||
${nsProcess::FindProcess} ${BIN_FREECAD} $R0
|
||||
# if running result is '0', if not running it is '603'
|
||||
${if} $R0 == "0"
|
||||
MessageBox MB_OK|MB_ICONSTOP "$(UnInstallRunning)" /SD IDOK
|
||||
Abort
|
||||
${endif}
|
||||
# plugin must be unloaded
|
||||
${nsProcess::Unload}
|
||||
|
||||
# initialize the multi-uder installer UI
|
||||
!insertmacro MULTIUSER_INIT
|
||||
|
||||
# this can be reset to "true" in section SecDesktop
|
||||
StrCpy $CreateDesktopIcon "false"
|
||||
StrCpy $CreateFileAssociations "false"
|
||||
|
||||
${IfNot} ${Silent}
|
||||
# Show banner while installer is intializating
|
||||
Banner::show /NOUNLOAD "Checking system"
|
||||
Banner::destroy
|
||||
${EndIf}
|
||||
|
||||
# if installer runs silent the post install mode page routine has to be called here
|
||||
${If} ${Silent}
|
||||
Call PostMultiUserPageInit
|
||||
${endif}
|
||||
|
||||
FunctionEnd
|
||||
|
||||
# this function is called at first after starting the uninstaller
|
||||
Function un.onInit
|
||||
|
||||
# Macro to investigate name of FreeCAD's preferences folders to be able remove them
|
||||
!insertmacro UnAppPreSuff $AppPre $AppSuff # macro from Utils.nsh
|
||||
|
||||
!insertmacro MULTIUSER_UNINIT
|
||||
|
||||
# Check that FreeCAD is not currently running
|
||||
${nsProcess::FindProcess} ${BIN_FREECAD} $R0
|
||||
# if running result is '0', if not running it is '603'
|
||||
${if} $R0 == "0"
|
||||
MessageBox MB_OK|MB_ICONSTOP "$(UnInstallRunning)" /SD IDOK
|
||||
Abort
|
||||
${endif}
|
||||
# plugin must be unloaded
|
||||
${nsProcess::Unload}
|
||||
|
||||
# check if it is a 64bit system
|
||||
${if} ${RunningX64}
|
||||
SetRegView 64
|
||||
${endif}
|
||||
|
||||
# Ascertain whether the user has sufficient privileges to uninstall.
|
||||
# abort when FreeCAD was installed with admin permissions but the user doesn't have administrator privileges
|
||||
ReadRegStr $0 HKLM "${APP_UNINST_KEY}" "DisplayVersion"
|
||||
${if} $0 != ""
|
||||
${andif} $MultiUser.Privileges != "Admin"
|
||||
${andif} $MultiUser.Privileges != "Power"
|
||||
MessageBox MB_OK|MB_ICONSTOP "$(UnNotAdminLabel)" /SD IDOK
|
||||
Abort
|
||||
${endif}
|
||||
# warning when FreeCAD couldn't be found in the registry
|
||||
${if} $0 == "" # check in HKCU
|
||||
ReadRegStr $0 HKCU "${APP_UNINST_KEY}" "DisplayVersion"
|
||||
${if} $0 == ""
|
||||
MessageBox MB_OK|MB_ICONEXCLAMATION "$(UnNotInRegistryLabel)" /SD IDOK
|
||||
${endif}
|
||||
${endif}
|
||||
|
||||
# question message if the user really wants to uninstall FreeCAD
|
||||
MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "$(UnReallyRemoveLabel)" /SD IDYES IDYES +2 # continue if yes
|
||||
Abort
|
||||
|
||||
FunctionEnd
|
||||
271
tools/build/WindowsInstaller/include/utils.nsh
Normal file
@@ -0,0 +1,271 @@
|
||||
# This script contains the following functions:
|
||||
#
|
||||
# - un.DelAppPathSub and UnAppPreSuff,
|
||||
# (delete the folder ~\Documents and Settings\username\Application Data\FreeCAD for all users), uses:
|
||||
# un.GetParentA
|
||||
# un.GetUsers
|
||||
# un.StrPoint
|
||||
# StrPointer
|
||||
# StrPoint
|
||||
# UnAppPreSuff
|
||||
#
|
||||
# - FileCheck (checks if a given file exists)
|
||||
#
|
||||
#--------------------------
|
||||
|
||||
!macro StrPointer FindStr SearchStr Pointer
|
||||
# searches for a string/character (SearchStr) in another string (FindStr)
|
||||
# and returns the number of the character in the FindStr where the SearchStr was found (Pointer)
|
||||
# if nothing was found or the search is impossible the Pointer is set to -1
|
||||
|
||||
StrLen $R2 ${SearchStr}
|
||||
StrLen $R4 ${FindStr}
|
||||
StrCpy $R5 0
|
||||
${if} $R2 == 0
|
||||
${orif} $R4 == 0
|
||||
Goto NotFound
|
||||
${endif}
|
||||
IntCmp $R4 $R2 loopA NotFound
|
||||
loopA:
|
||||
StrCpy $R3 ${FindStr} $R2 $R5
|
||||
StrCmp $R3 ${SearchStr} Found
|
||||
IntOp $R5 $R5 + 1
|
||||
IntCmp $R4 $R5 loopA NotFound
|
||||
Goto loopA
|
||||
Found:
|
||||
StrCpy ${Pointer} $R5
|
||||
Goto done
|
||||
NotFound:
|
||||
StrCpy ${Pointer} "-1"
|
||||
done:
|
||||
|
||||
!macroend
|
||||
|
||||
#--------------------------------
|
||||
|
||||
Function StrPoint
|
||||
!insertmacro StrPointer $String $Search $Pointer
|
||||
FunctionEnd
|
||||
|
||||
#--------------------------------
|
||||
|
||||
!macro RevStrPointer FindStr SearchStr Pointer
|
||||
# searches for a string/character (SearchStr) in another string (FindStr) in reverse order
|
||||
# and returns the number of the character in the FindStr where the SearchStr was found (Pointer)
|
||||
# if nothing was found or the search is impossible the Pointer is set to +1
|
||||
|
||||
StrLen $R2 ${SearchStr}
|
||||
StrLen $R4 ${FindStr}
|
||||
${if} $R2 == 0
|
||||
${orif} $R4 == 0
|
||||
Goto NotFound
|
||||
${endif}
|
||||
IntCmp $R4 $R2 loopA NotFound
|
||||
StrCpy $R5 "-$R2"
|
||||
loopA:
|
||||
StrCpy $R3 ${FindStr} $R2 $R5
|
||||
StrCmp $R3 ${SearchStr} Found
|
||||
IntOp $R5 $R5 - 1
|
||||
IntCmp "$R5" "-$R4" loopA NotFound
|
||||
Goto loopA
|
||||
Found:
|
||||
StrCpy ${Pointer} $R5
|
||||
Goto done
|
||||
NotFound:
|
||||
StrCpy ${Pointer} "+1"
|
||||
done:
|
||||
|
||||
!macroend
|
||||
|
||||
#--------------------------------
|
||||
|
||||
!macro AppPreSuff AppPre AppSuff
|
||||
# the APPDATA path for a local user has for WinXP and 2000 the following structure:
|
||||
# C:\Documents and Settings\username\Application Data
|
||||
# for Win Vista the structure is:
|
||||
# C:\Users\username\AppData\Roaming
|
||||
# this macro saves the "C:\Documents and Settings\" substring into the variable "AppPre"
|
||||
# and the "Application Data" substring into the variable "AppSuff"
|
||||
|
||||
# switch temporarily to local user because the all users application data path is in
|
||||
# Vista only C:\ProgramData
|
||||
SetShellVarContext current
|
||||
StrCpy $String "$APPDATA"
|
||||
Var /GLOBAL APPDATemp
|
||||
StrCpy $APPDATemp "$APPDATA"
|
||||
${If} $MultiUser.Privileges == "Admin"
|
||||
${OrIf} $MultiUser.Privileges == "Power"
|
||||
SetShellVarContext all # move back to all users
|
||||
${endif}
|
||||
StrCpy $Search "\"
|
||||
Call StrPoint # search for the first "\"
|
||||
IntOp $Pointer $Pointer + 1 # jump after the "\"
|
||||
StrCpy $String $String "" $Pointer # cut off the part before the first "\"
|
||||
StrCpy $0 $Pointer
|
||||
Call StrPoint # search for the second "\"
|
||||
IntOp $0 $0 + $Pointer # $0 is now the pointer to the second "\" in the APPDATA string
|
||||
StrCpy ${AppPre} $APPDATemp $0 # save the part before the second "\"
|
||||
IntOp $Pointer $Pointer + 1 # jump after the "\"
|
||||
StrCpy $String $String "" $Pointer # cut off the part before the second "\"
|
||||
Call StrPoint # search for the third "\"
|
||||
IntOp $Pointer $Pointer + 1 # jump after the "\"
|
||||
StrCpy ${AppSuff} $String "" $Pointer # save the part after the third "\"
|
||||
|
||||
!macroend
|
||||
|
||||
#--------------------------------
|
||||
|
||||
Function un.GetParentA
|
||||
# deletes a subfolder of the APPDATA path for all users
|
||||
# used by the function "un.getUsers"
|
||||
|
||||
Exch $R0
|
||||
Push $R1
|
||||
Push $R2
|
||||
Push $R3
|
||||
StrCpy $R1 0
|
||||
StrLen $R2 $R0
|
||||
loop:
|
||||
IntOp $R1 $R1 + 1
|
||||
IntCmp $R1 $R2 get 0 get
|
||||
StrCpy $R3 $R0 1 -$R1
|
||||
StrCmp $R3 "\" get
|
||||
Goto loop
|
||||
get:
|
||||
StrCpy $R0 $R0 -$R1
|
||||
Pop $R3
|
||||
Pop $R2
|
||||
Pop $R1
|
||||
Exch $R0
|
||||
|
||||
FunctionEnd
|
||||
|
||||
#--------------------------------
|
||||
|
||||
Function un.GetUsers
|
||||
# reads the subfolders of the "Documents and Settings" folder to get a list of the users
|
||||
|
||||
StrCpy $R3 ""
|
||||
Push "$PROFILE"
|
||||
Call un.GetParentA
|
||||
Pop $R2
|
||||
StrCpy $R2 "$R2"
|
||||
FindFirst $R0 $R1 "$R2\*"
|
||||
StrCmp $R1 "" findend 0
|
||||
findloop:
|
||||
IfFileExists "$R2\$R1\*.*" 0 notDir
|
||||
StrCmp $R1 "." notDir
|
||||
StrCmp $R1 ".." notDir
|
||||
StrCmp $R1 "All Users" notDir
|
||||
StrCmp $R1 "Default User" notDir
|
||||
StrCmp $R1 "All Users.WINNT" notDir
|
||||
StrCmp $R1 "Default User.WINNT" notDir
|
||||
StrCpy $R3 "$R3|$R1"
|
||||
notDir:
|
||||
FindNext $R0 $R1
|
||||
StrCmp $R1 "" findend 0
|
||||
Goto findloop
|
||||
findend:
|
||||
FindClose $R0
|
||||
|
||||
FunctionEnd
|
||||
|
||||
#--------------------------------
|
||||
|
||||
Function un.StrPoint
|
||||
!insertmacro StrPointer $String $Search $Pointer
|
||||
FunctionEnd
|
||||
|
||||
#--------------------------------
|
||||
|
||||
!macro UnAppPreSuff AppPre AppSuff
|
||||
# the APPDATA path for a local user has for WinXP and 2000 the following structure:
|
||||
# C:\Documents and Settings\username\Application Data
|
||||
# for Win Vista the structure is:
|
||||
# C:\Users\username\AppData\Roaming
|
||||
# this macro saves the "C:\Documents and Settings\" substring into the variable "AppPre"
|
||||
# and the "Application Data" substring into the variable "AppSuff"
|
||||
|
||||
SetShellVarContext current # switch temoprarily to local user
|
||||
StrCpy $String "$APPDATA"
|
||||
StrCpy $APPDATemp "$APPDATA"
|
||||
${if} $MultiUser.Privileges == "Admin"
|
||||
${orif} $MultiUser.Privileges == "Power"
|
||||
SetShellVarContext all # move back to all users
|
||||
${endif}
|
||||
StrCpy $Search "\"
|
||||
Call un.StrPoint # search for the first "\"
|
||||
IntOp $Pointer $Pointer + 1 # jump after the "\"
|
||||
StrCpy $String $String "" $Pointer # cut off the part before the first "\"
|
||||
StrCpy $0 $Pointer
|
||||
Call un.StrPoint # search for the second "\"
|
||||
IntOp $0 $0 + $Pointer # $0 is now the pointer to the second "\" in the APPDATA string
|
||||
StrCpy ${AppPre} $APPDATemp $0 # save the part before the second "\"
|
||||
IntOp $Pointer $Pointer + 1 # jump after the "\"
|
||||
StrCpy $String $String "" $Pointer # cut off the part before the second "\"
|
||||
Call un.StrPoint # search for the third "\"
|
||||
IntOp $Pointer $Pointer + 1 # jump after the "\"
|
||||
StrCpy ${AppSuff} $String "" $Pointer # save the part after the third "\"
|
||||
|
||||
!macroend
|
||||
|
||||
#--------------------------------
|
||||
|
||||
Function un.DelAppPathSub
|
||||
# deletes a subfolder of the APPDATA path for all users
|
||||
|
||||
# get list of all users
|
||||
Push $R0
|
||||
Push $R1
|
||||
Push $R2
|
||||
Push $R3
|
||||
Call un.GetUsers
|
||||
StrCpy $UserList $R3 "" 1 # cut off the "|" at the end of the list
|
||||
Pop $R3
|
||||
Pop $R2
|
||||
Pop $R1
|
||||
Pop $R0
|
||||
|
||||
# the usernames in the list of all users is separated by "|"
|
||||
loop:
|
||||
StrCpy $String "$UserList"
|
||||
StrCpy $Search "|"
|
||||
Call un.StrPoint # search for the "|"
|
||||
StrCmp $Pointer "-1" ready
|
||||
StrCpy $0 $UserList $Pointer # $0 contains now the username
|
||||
IntOp $Pointer $Pointer + 1 # jump after the "|"
|
||||
StrCpy $UserList $UserList "" $Pointer # cut off the first username in the list
|
||||
# generate the string for the current user
|
||||
# AppPre and AppSuff are generated in the macro "AppPreSuff"
|
||||
RMDir /r "$AppPre\$0\$AppSuff\$AppSubfolder" # delete the folder
|
||||
Goto loop
|
||||
ready:
|
||||
StrCpy $0 $UserList
|
||||
RMDir /r "$AppPre\$0\$AppSuff\$AppSubfolder" # delete the folder
|
||||
|
||||
FunctionEnd
|
||||
|
||||
#--------------------------------
|
||||
#source: https://nsis.sourceforge.io/Trim_quotes
|
||||
|
||||
Function TrimQuotes
|
||||
Exch $R0
|
||||
Push $R1
|
||||
|
||||
StrCpy $R1 $R0 1
|
||||
StrCmp $R1 `"` 0 +2
|
||||
StrCpy $R0 $R0 `` 1
|
||||
StrCpy $R1 $R0 1 -1
|
||||
StrCmp $R1 `"` 0 +2
|
||||
StrCpy $R0 $R0 -1
|
||||
|
||||
Pop $R1
|
||||
Exch $R0
|
||||
FunctionEnd
|
||||
|
||||
!macro _TrimQuotes Input Output
|
||||
Push `${Input}`
|
||||
Call TrimQuotes
|
||||
Pop ${Output}
|
||||
!macroend
|
||||
!define TrimQuotes `!insertmacro _TrimQuotes`
|
||||
@@ -0,0 +1,17 @@
|
||||
1. Take the file 'FreeCAD-filename-SHA256.txt'
|
||||
2. Save it to the location of the file you want to checksum
|
||||
3. Rename it so that you replace 'filename' with the name of your file you want to checksum.
|
||||
Thereby don't forget that the file ending has to be part of the name.
|
||||
4. Open the file in a text editor
|
||||
|
||||
5.
|
||||
* Either (if you have 7-Zip installed):
|
||||
1. right-click on the file you want to checksum
|
||||
2. select in the context menu "7-Zip -> CRC SHA -> SHA-256"
|
||||
3. copy the content of the appearing dialog to the text file
|
||||
|
||||
* Or
|
||||
1. run Windows' 'certutil' utility in the command line, e.g.:
|
||||
certutil -hashfile FreeCAD-0.20.0-WIN-x64-installer-1.exe SHA256
|
||||
2. Copy the resulting hash from the command line to the file
|
||||
3. Update file size and filename in the file
|
||||
@@ -0,0 +1,3 @@
|
||||
Name: FreeCAD-0.19.3-WIN-x64-installer-1.exe
|
||||
Size: 583773656 bytes (556 MiB)
|
||||
SHA256: d4cc7869b7bb1c3e5c7b4fe75a578bc825d191d4cd4054fa015d7ae83c6f51f7
|
||||
260
tools/build/WindowsInstaller/information/ISO_3166.html
Normal file
@@ -0,0 +1,260 @@
|
||||
<html><head><title>ISO 3166 Codes (Countries)</title></head><body>
|
||||
|
||||
<h1>ISO 3166 Codes (Countries)</h1>
|
||||
|
||||
Updated by the RIPE Network Coordination Centre, in coordination with
|
||||
the ISO 3166 Maintenance Agency, Berlin
|
||||
<p>
|
||||
See also:
|
||||
|
||||
</p><ul>
|
||||
<li><a href="http://www.iso.org/iso/en/prods-services/iso3166ma/index.html">ISO 3166
|
||||
Maintenance agency (ISO 3166/MA)</a>
|
||||
</li><li><a href="http://www.davros.org/misc/iso3166.html">Country codes in ISO 3166</a>
|
||||
|
||||
<p>
|
||||
|
||||
</p><pre>Country A 2 A 3 Number
|
||||
----------------------------------------------------------------------
|
||||
AFGHANISTAN AF AFG 004
|
||||
ALBANIA AL ALB 008
|
||||
ALGERIA DZ DZA 012
|
||||
AMERICAN SAMOA AS ASM 016
|
||||
ANDORRA AD AND 020
|
||||
ANGOLA AO AGO 024
|
||||
ANGUILLA AI AIA 660
|
||||
ANTARCTICA AQ ATA 010
|
||||
ANTIGUA AND BARBUDA AG ATG 028
|
||||
ARGENTINA AR ARG 032
|
||||
ARMENIA AM ARM 051
|
||||
ARUBA AW ABW 533
|
||||
AUSTRALIA AU AUS 036
|
||||
AUSTRIA AT AUT 040
|
||||
AZERBAIJAN AZ AZE 031
|
||||
BAHAMAS BS BHS 044
|
||||
BAHRAIN BH BHR 048
|
||||
BANGLADESH BD BGD 050
|
||||
BARBADOS BB BRB 052
|
||||
BELARUS BY BLR 112
|
||||
BELGIUM BE BEL 056
|
||||
BELIZE BZ BLZ 084
|
||||
BENIN BJ BEN 204
|
||||
BERMUDA BM BMU 060
|
||||
BHUTAN BT BTN 064
|
||||
BOLIVIA BO BOL 068
|
||||
BOSNIA AND HERZEGOWINA BA BIH 070
|
||||
BOTSWANA BW BWA 072
|
||||
BOUVET ISLAND BV BVT 074
|
||||
BRAZIL BR BRA 076
|
||||
BRITISH INDIAN OCEAN TERRITORY IO IOT 086
|
||||
BRUNEI DARUSSALAM BN BRN 096
|
||||
BULGARIA BG BGR 100
|
||||
BURKINA FASO BF BFA 854
|
||||
BURUNDI BI BDI 108
|
||||
CAMBODIA KH KHM 116
|
||||
CAMEROON CM CMR 120
|
||||
CANADA CA CAN 124
|
||||
CAPE VERDE CV CPV 132
|
||||
CAYMAN ISLANDS KY CYM 136
|
||||
CENTRAL AFRICAN REPUBLIC CF CAF 140
|
||||
CHAD TD TCD 148
|
||||
CHILE CL CHL 152
|
||||
CHINA CN CHN 156
|
||||
CHRISTMAS ISLAND CX CXR 162
|
||||
COCOS (KEELING) ISLANDS CC CCK 166
|
||||
COLOMBIA CO COL 170
|
||||
COMOROS KM COM 174
|
||||
CONGO, Democratic Republic of (was Zaire) CD COD 180
|
||||
CONGO, People's Republic of CG COG 178
|
||||
COOK ISLANDS CK COK 184
|
||||
COSTA RICA CR CRI 188
|
||||
COTE D'IVOIRE CI CIV 384
|
||||
CROATIA (local name: Hrvatska) HR HRV 191
|
||||
CUBA CU CUB 192
|
||||
CYPRUS CY CYP 196
|
||||
CZECH REPUBLIC CZ CZE 203
|
||||
DENMARK DK DNK 208
|
||||
DJIBOUTI DJ DJI 262
|
||||
DOMINICA DM DMA 212
|
||||
DOMINICAN REPUBLIC DO DOM 214
|
||||
EAST TIMOR TL TLS 626
|
||||
ECUADOR EC ECU 218
|
||||
EGYPT EG EGY 818
|
||||
EL SALVADOR SV SLV 222
|
||||
EQUATORIAL GUINEA GQ GNQ 226
|
||||
ERITREA ER ERI 232
|
||||
ESTONIA EE EST 233
|
||||
ETHIOPIA ET ETH 231
|
||||
FALKLAND ISLANDS (MALVINAS) FK FLK 238
|
||||
FAROE ISLANDS FO FRO 234
|
||||
FIJI FJ FJI 242
|
||||
FINLAND FI FIN 246
|
||||
FRANCE FR FRA 250
|
||||
FRANCE, METROPOLITAN FX FXX 249
|
||||
FRENCH GUIANA GF GUF 254
|
||||
FRENCH POLYNESIA PF PYF 258
|
||||
FRENCH SOUTHERN TERRITORIES TF ATF 260
|
||||
GABON GA GAB 266
|
||||
GAMBIA GM GMB 270
|
||||
GEORGIA GE GEO 268
|
||||
GERMANY DE DEU 276
|
||||
GHANA GH GHA 288
|
||||
GIBRALTAR GI GIB 292
|
||||
GREECE GR GRC 300
|
||||
GREENLAND GL GRL 304
|
||||
GRENADA GD GRD 308
|
||||
GUADELOUPE GP GLP 312
|
||||
GUAM GU GUM 316
|
||||
GUATEMALA GT GTM 320
|
||||
GUINEA GN GIN 324
|
||||
GUINEA-BISSAU GW GNB 624
|
||||
GUYANA GY GUY 328
|
||||
HAITI HT HTI 332
|
||||
HEARD AND MC DONALD ISLANDS HM HMD 334
|
||||
HONDURAS HN HND 340
|
||||
HONG KONG HK HKG 344
|
||||
HUNGARY HU HUN 348
|
||||
ICELAND IS ISL 352
|
||||
INDIA IN IND 356
|
||||
INDONESIA ID IDN 360
|
||||
IRAN (ISLAMIC REPUBLIC OF) IR IRN 364
|
||||
IRAQ IQ IRQ 368
|
||||
IRELAND IE IRL 372
|
||||
ISRAEL IL ISR 376
|
||||
ITALY IT ITA 380
|
||||
JAMAICA JM JAM 388
|
||||
JAPAN JP JPN 392
|
||||
JORDAN JO JOR 400
|
||||
KAZAKHSTAN KZ KAZ 398
|
||||
KENYA KE KEN 404
|
||||
KIRIBATI KI KIR 296
|
||||
KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF KP PRK 408
|
||||
KOREA, REPUBLIC OF KR KOR 410
|
||||
KUWAIT KW KWT 414
|
||||
KYRGYZSTAN KG KGZ 417
|
||||
LAO PEOPLE'S DEMOCRATIC REPUBLIC LA LAO 418
|
||||
LATVIA LV LVA 428
|
||||
LEBANON LB LBN 422
|
||||
LESOTHO LS LSO 426
|
||||
LIBERIA LR LBR 430
|
||||
LIBYAN ARAB JAMAHIRIYA LY LBY 434
|
||||
LIECHTENSTEIN LI LIE 438
|
||||
LITHUANIA LT LTU 440
|
||||
LUXEMBOURG LU LUX 442
|
||||
MACAU MO MAC 446
|
||||
MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF MK MKD 807
|
||||
MADAGASCAR MG MDG 450
|
||||
MALAWI MW MWI 454
|
||||
MALAYSIA MY MYS 458
|
||||
MALDIVES MV MDV 462
|
||||
MALI ML MLI 466
|
||||
MALTA MT MLT 470
|
||||
MARSHALL ISLANDS MH MHL 584
|
||||
MARTINIQUE MQ MTQ 474
|
||||
MAURITANIA MR MRT 478
|
||||
MAURITIUS MU MUS 480
|
||||
MAYOTTE YT MYT 175
|
||||
MEXICO MX MEX 484
|
||||
MICRONESIA, FEDERATED STATES OF FM FSM 583
|
||||
MOLDOVA, REPUBLIC OF MD MDA 498
|
||||
MONACO MC MCO 492
|
||||
MONGOLIA MN MNG 496
|
||||
MONTSERRAT MS MSR 500
|
||||
MOROCCO MA MAR 504
|
||||
MOZAMBIQUE MZ MOZ 508
|
||||
MYANMAR MM MMR 104
|
||||
NAMIBIA NA NAM 516
|
||||
NAURU NR NRU 520
|
||||
NEPAL NP NPL 524
|
||||
NETHERLANDS NL NLD 528
|
||||
NETHERLANDS ANTILLES AN ANT 530
|
||||
NEW CALEDONIA NC NCL 540
|
||||
NEW ZEALAND NZ NZL 554
|
||||
NICARAGUA NI NIC 558
|
||||
NIGER NE NER 562
|
||||
NIGERIA NG NGA 566
|
||||
NIUE NU NIU 570
|
||||
NORFOLK ISLAND NF NFK 574
|
||||
NORTHERN MARIANA ISLANDS MP MNP 580
|
||||
NORWAY NO NOR 578
|
||||
OMAN OM OMN 512
|
||||
PAKISTAN PK PAK 586
|
||||
PALAU PW PLW 585
|
||||
PALESTINIAN TERRITORY, Occupied PS PSE 275
|
||||
PANAMA PA PAN 591
|
||||
PAPUA NEW GUINEA PG PNG 598
|
||||
PARAGUAY PY PRY 600
|
||||
PERU PE PER 604
|
||||
PHILIPPINES PH PHL 608
|
||||
PITCAIRN PN PCN 612
|
||||
POLAND PL POL 616
|
||||
PORTUGAL PT PRT 620
|
||||
PUERTO RICO PR PRI 630
|
||||
QATAR QA QAT 634
|
||||
REUNION RE REU 638
|
||||
ROMANIA RO ROU 642
|
||||
RUSSIAN FEDERATION RU RUS 643
|
||||
RWANDA RW RWA 646
|
||||
SAINT KITTS AND NEVIS KN KNA 659
|
||||
SAINT LUCIA LC LCA 662
|
||||
SAINT VINCENT AND THE GRENADINES VC VCT 670
|
||||
SAMOA WS WSM 882
|
||||
SAN MARINO SM SMR 674
|
||||
SAO TOME AND PRINCIPE ST STP 678
|
||||
SAUDI ARABIA SA SAU 682
|
||||
SENEGAL SN SEN 686
|
||||
SEYCHELLES SC SYC 690
|
||||
SIERRA LEONE SL SLE 694
|
||||
SINGAPORE SG SGP 702
|
||||
SLOVAKIA (Slovak Republic) SK SVK 703
|
||||
SLOVENIA SI SVN 705
|
||||
SOLOMON ISLANDS SB SLB 090
|
||||
SOMALIA SO SOM 706
|
||||
SOUTH AFRICA ZA ZAF 710
|
||||
SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS GS SGS 239
|
||||
SPAIN ES ESP 724
|
||||
SRI LANKA LK LKA 144
|
||||
ST. HELENA SH SHN 654
|
||||
ST. PIERRE AND MIQUELON PM SPM 666
|
||||
SUDAN SD SDN 736
|
||||
SURINAME SR SUR 740
|
||||
SVALBARD AND JAN MAYEN ISLANDS SJ SJM 744
|
||||
SWAZILAND SZ SWZ 748
|
||||
SWEDEN SE SWE 752
|
||||
SWITZERLAND CH CHE 756
|
||||
SYRIAN ARAB REPUBLIC SY SYR 760
|
||||
TAIWAN TW TWN 158
|
||||
TAJIKISTAN TJ TJK 762
|
||||
TANZANIA, UNITED REPUBLIC OF TZ TZA 834
|
||||
THAILAND TH THA 764
|
||||
TOGO TG TGO 768
|
||||
TOKELAU TK TKL 772
|
||||
TONGA TO TON 776
|
||||
TRINIDAD AND TOBAGO TT TTO 780
|
||||
TUNISIA TN TUN 788
|
||||
TURKEY TR TUR 792
|
||||
TURKMENISTAN TM TKM 795
|
||||
TURKS AND CAICOS ISLANDS TC TCA 796
|
||||
TUVALU TV TUV 798
|
||||
UGANDA UG UGA 800
|
||||
UKRAINE UA UKR 804
|
||||
UNITED ARAB EMIRATES AE ARE 784
|
||||
UNITED KINGDOM GB GBR 826
|
||||
UNITED STATES US USA 840
|
||||
UNITED STATES MINOR OUTLYING ISLANDS UM UMI 581
|
||||
URUGUAY UY URY 858
|
||||
UZBEKISTAN UZ UZB 860
|
||||
VANUATU VU VUT 548
|
||||
VATICAN CITY STATE (HOLY SEE) VA VAT 336
|
||||
VENEZUELA VE VEN 862
|
||||
VIET NAM VN VNM 704
|
||||
VIRGIN ISLANDS (BRITISH) VG VGB 092
|
||||
VIRGIN ISLANDS (U.S.) VI VIR 850
|
||||
WALLIS AND FUTUNA ISLANDS WF WLF 876
|
||||
WESTERN SAHARA EH ESH 732
|
||||
YEMEN YE YEM 887
|
||||
YUGOSLAVIA YU YUG 891
|
||||
ZAMBIA ZM ZMB 894
|
||||
ZIMBABWE ZW ZWE 716
|
||||
</pre>
|
||||
</li></ul></body></html>
|
||||
BIN
tools/build/WindowsInstaller/information/InstallerStructure.odg
Normal file
BIN
tools/build/WindowsInstaller/information/InstallerStructure.pdf
Normal file
580
tools/build/WindowsInstaller/information/WinLangCode.htm
Normal file
554
tools/build/WindowsInstaller/information/iso639.htm
Normal file
@@ -0,0 +1,554 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//SoftQuad//DTD HoTMetaL PRO 5.0::19980907::extensions to HTML 4.0//EN" "hmpro5.dtd">
|
||||
<html><head><title>ISO 639 Language Codes</title></head>
|
||||
|
||||
|
||||
|
||||
<body>
|
||||
<h1>ISO 639 Language Codes</h1>
|
||||
<h2><a name="3letter">ISO 639: 3-letter codes</a></h2>
|
||||
<pre>abk ab Abkhazian
|
||||
ace Achinese
|
||||
ach Acoli
|
||||
ada Adangme
|
||||
aar aa Afar
|
||||
afh Afrihili
|
||||
afr af Afrikaans
|
||||
afa Afro-Asiatic (Other)
|
||||
aka Akan
|
||||
akk Akkadian
|
||||
alb/sqi sq Albanian
|
||||
ale Aleut
|
||||
alg Algonquian languages
|
||||
tut Altaic (Other)
|
||||
amh am Amharic
|
||||
apa Apache languages
|
||||
ara ar Arabic
|
||||
arc Aramaic
|
||||
arp Arapaho
|
||||
arn Araucanian
|
||||
arw Arawak
|
||||
arm/hye hy Armenian
|
||||
art Artificial (Other)
|
||||
asm as Assamese
|
||||
ath Athapascan languages
|
||||
map Austronesian (Other)
|
||||
ava Avaric
|
||||
ave Avestan
|
||||
awa Awadhi
|
||||
aym ay Aymara
|
||||
aze az Azerbaijani
|
||||
nah Aztec
|
||||
ban Balinese
|
||||
bat Baltic (Other)
|
||||
bal Baluchi
|
||||
bam Bambara
|
||||
bai Bamileke languages
|
||||
bad Banda
|
||||
bnt Bantu (Other)
|
||||
bas Basa
|
||||
bak ba Bashkir
|
||||
baq/eus eu Basque
|
||||
bej Beja
|
||||
bem Bemba
|
||||
ben bn Bengali
|
||||
ber Berber (Other)
|
||||
bho Bhojpuri
|
||||
bih bh Bihari
|
||||
bik Bikol
|
||||
bin Bini
|
||||
bis bi Bislama
|
||||
bra Braj
|
||||
bre be Breton
|
||||
bug Buginese
|
||||
bul bg Bulgarian
|
||||
bua Buriat
|
||||
bur/mya my Burmese
|
||||
bel be Byelorussian
|
||||
cad Caddo
|
||||
car Carib
|
||||
cat ca Catalan
|
||||
cau Caucasian (Other)
|
||||
ceb Cebuano
|
||||
cel Celtic (Other)
|
||||
cai Central American Indian (Other)
|
||||
chg Chagatai
|
||||
cha Chamorro
|
||||
che Chechen
|
||||
chr Cherokee
|
||||
chy Cheyenne
|
||||
chb Chibcha
|
||||
chi/zho zh Chinese
|
||||
chn Chinook jargon
|
||||
cho Choctaw
|
||||
chu Church Slavic
|
||||
chv Chuvash
|
||||
cop Coptic
|
||||
cor Cornish
|
||||
cos co Corsican
|
||||
cre Cree
|
||||
mus Creek
|
||||
crp Creoles and Pidgins (Other)
|
||||
cpe Creoles and Pidgins, English-based (Other)
|
||||
cpf Creoles and Pidgins, French-based (Other)
|
||||
cpp Creoles and Pidgins, Portuguese-based (Other)
|
||||
cus Cushitic (Other)
|
||||
hr Croatian
|
||||
ces/cze cs Czech
|
||||
dak Dakota
|
||||
dan da Danish
|
||||
del Delaware
|
||||
din Dinka
|
||||
div Divehi
|
||||
doi Dogri
|
||||
dra Dravidian (Other)
|
||||
dua Duala
|
||||
dut/nla nl Dutch
|
||||
dum Dutch, Middle (ca. 1050-1350)
|
||||
dyu Dyula
|
||||
dzo dz Dzongkha
|
||||
efi Efik
|
||||
egy Egyptian (Ancient)
|
||||
eka Ekajuk
|
||||
elx Elamite
|
||||
eng en English
|
||||
enm English, Middle (ca. 1100-1500)
|
||||
ang English, Old (ca. 450-1100)
|
||||
esk Eskimo (Other)
|
||||
epo eo Esperanto
|
||||
est et Estonian
|
||||
ewe Ewe
|
||||
ewo Ewondo
|
||||
fan Fang
|
||||
fat Fanti
|
||||
fao fo Faroese
|
||||
fij fj Fijian
|
||||
fin fi Finnish
|
||||
fiu Finno-Ugrian (Other)
|
||||
fon Fon
|
||||
fra/fre fr French
|
||||
frm French, Middle (ca. 1400-1600)
|
||||
fro French, Old (842- ca. 1400)
|
||||
fry fy Frisian
|
||||
ful Fulah
|
||||
gaa Ga
|
||||
gae/gdh Gaelic (Scots)
|
||||
glg gl Gallegan
|
||||
lug Ganda
|
||||
gay Gayo
|
||||
gez Geez
|
||||
geo/kat ka Georgian
|
||||
deu/ger de German
|
||||
gmh German, Middle High (ca. 1050-1500)
|
||||
goh German, Old High (ca. 750-1050)
|
||||
gem Germanic (Other)
|
||||
gil Gilbertese
|
||||
gon Gondi
|
||||
got Gothic
|
||||
grb Grebo
|
||||
grc Greek, Ancient (to 1453)
|
||||
ell/gre el Greek, Modern (1453-)
|
||||
kal kl Greenlandic
|
||||
grn gn Guarani
|
||||
guj gu Gujarati
|
||||
hai Haida
|
||||
hau ha Hausa
|
||||
haw Hawaiian
|
||||
heb he Hebrew
|
||||
her Herero
|
||||
hil Hiligaynon
|
||||
him Himachali
|
||||
hin hi Hindi
|
||||
hmo Hiri Motu
|
||||
hun hu Hungarian
|
||||
hup Hupa
|
||||
iba Iban
|
||||
ice/isl is Icelandic
|
||||
ibo Igbo
|
||||
ijo Ijo
|
||||
ilo Iloko
|
||||
inc Indic (Other)
|
||||
ine Indo-European (Other)
|
||||
ind id Indonesian
|
||||
ina ia Interlingua (International Auxiliary language Association)
|
||||
ine - Interlingue
|
||||
iku iu Inuktitut
|
||||
ipk ik Inupiak
|
||||
ira Iranian (Other)
|
||||
gai/iri ga Irish
|
||||
sga Irish, Old (to 900)
|
||||
mga Irish, Middle (900 - 1200)
|
||||
iro Iroquoian languages
|
||||
ita it Italian
|
||||
jpn ja Japanese
|
||||
jav/jaw jv/jw Javanese
|
||||
jrb Judeo-Arabic
|
||||
jpr Judeo-Persian
|
||||
kab Kabyle
|
||||
kac Kachin
|
||||
kam Kamba
|
||||
kan kn Kannada
|
||||
kau Kanuri
|
||||
kaa Kara-Kalpak
|
||||
kar Karen
|
||||
kas ks Kashmiri
|
||||
kaw Kawi
|
||||
kaz kk Kazakh
|
||||
kha Khasi
|
||||
khm km Khmer
|
||||
khi Khoisan (Other)
|
||||
kho Khotanese
|
||||
kik Kikuyu
|
||||
kin rw Kinyarwanda
|
||||
kir ky Kirghiz
|
||||
kom Komi
|
||||
kon Kongo
|
||||
kok Konkani
|
||||
kor ko Korean
|
||||
kpe Kpelle
|
||||
kro Kru
|
||||
kua Kuanyama
|
||||
kum Kumyk
|
||||
kur ku Kurdish
|
||||
kru Kurukh
|
||||
kus Kusaie
|
||||
kut Kutenai
|
||||
lad Ladino
|
||||
lah Lahnda
|
||||
lam Lamba
|
||||
oci oc Langue d'Oc (post 1500)
|
||||
lao lo Lao
|
||||
lat la Latin
|
||||
lav lv Latvian
|
||||
ltz Letzeburgesch
|
||||
lez Lezghian
|
||||
lin ln Lingala
|
||||
lit lt Lithuanian
|
||||
loz Lozi
|
||||
lub Luba-Katanga
|
||||
lui Luiseno
|
||||
lun Lunda
|
||||
luo Luo (Kenya and Tanzania)
|
||||
mac/mak mk Macedonian
|
||||
mad Madurese
|
||||
mag Magahi
|
||||
mai Maithili
|
||||
mak Makasar
|
||||
mlg mg Malagasy
|
||||
may/msa ms Malay
|
||||
mal Malayalam
|
||||
mlt ml Maltese
|
||||
man Mandingo
|
||||
mni Manipuri
|
||||
mno Manobo languages
|
||||
max Manx
|
||||
mao/mri mi Maori
|
||||
mar mr Marathi
|
||||
chm Mari
|
||||
mah Marshall
|
||||
mwr Marwari
|
||||
mas Masai
|
||||
myn Mayan languages
|
||||
men Mende
|
||||
mic Micmac
|
||||
min Minangkabau
|
||||
mis Miscellaneous (Other)
|
||||
moh Mohawk
|
||||
mol mo Moldavian
|
||||
mkh Mon-Kmer (Other)
|
||||
lol Mongo
|
||||
mon mn Mongolian
|
||||
mos Mossi
|
||||
mul Multiple languages
|
||||
mun Munda languages
|
||||
nau na Nauru
|
||||
nav Navajo
|
||||
nde Ndebele, North
|
||||
nbl Ndebele, South
|
||||
ndo Ndongo
|
||||
nep ne Nepali
|
||||
new Newari
|
||||
nic Niger-Kordofanian (Other)
|
||||
ssa Nilo-Saharan (Other)
|
||||
niu Niuean
|
||||
non Norse, Old
|
||||
nai North American Indian (Other)
|
||||
nor no Norwegian
|
||||
nno Norwegian (Nynorsk)
|
||||
nub Nubian languages
|
||||
nym Nyamwezi
|
||||
nya Nyanja
|
||||
nyn Nyankole
|
||||
nyo Nyoro
|
||||
nzi Nzima
|
||||
oji Ojibwa
|
||||
ori or Oriya
|
||||
orm om Oromo
|
||||
osa Osage
|
||||
oss Ossetic
|
||||
oto Otomian languages
|
||||
pal Pahlavi
|
||||
pau Palauan
|
||||
pli Pali
|
||||
pam Pampanga
|
||||
pag Pangasinan
|
||||
pan pa Panjabi
|
||||
pap Papiamento
|
||||
paa Papuan-Australian (Other)
|
||||
fas/per fa Persian
|
||||
peo Persian, Old (ca 600 - 400 B.C.)
|
||||
phn Phoenician
|
||||
pol pl Polish
|
||||
pon Ponape
|
||||
por pt Portuguese
|
||||
pra Prakrit languages
|
||||
pro Provencal, Old (to 1500)
|
||||
pus ps Pushto
|
||||
que qu Quechua
|
||||
roh rm Rhaeto-Romance
|
||||
raj Rajasthani
|
||||
rar Rarotongan
|
||||
roa Romance (Other)
|
||||
ron/rum ro Romanian
|
||||
rom Romany
|
||||
run rn Rundi
|
||||
rus ru Russian
|
||||
sal Salishan languages
|
||||
sam Samaritan Aramaic
|
||||
smi Sami languages
|
||||
smo sm Samoan
|
||||
sad Sandawe
|
||||
sag sg Sango
|
||||
san sa Sanskrit
|
||||
srd Sardinian
|
||||
sco Scots
|
||||
sel Selkup
|
||||
sem Semitic (Other)
|
||||
sr Serbian
|
||||
scr sh Serbo-Croatian
|
||||
srr Serer
|
||||
shn Shan
|
||||
sna sn Shona
|
||||
sid Sidamo
|
||||
bla Siksika
|
||||
snd sd Sindhi
|
||||
sin si Singhalese
|
||||
sit - Sino-Tibetan (Other)
|
||||
sio Siouan languages
|
||||
sla Slavic (Other)
|
||||
ssw ss Siswant
|
||||
slk/slo sk Slovak
|
||||
slv sl Slovenian
|
||||
sog Sogdian
|
||||
som so Somali
|
||||
son Songhai
|
||||
wen Sorbian languages
|
||||
nso Sotho, Northern
|
||||
sot st Sotho, Southern
|
||||
sai South American Indian (Other)
|
||||
esl/spa es Spanish
|
||||
suk Sukuma
|
||||
sux Sumerian
|
||||
sun su Sudanese
|
||||
sus Susu
|
||||
swa sw Swahili
|
||||
ssw Swazi
|
||||
sve/swe sv Swedish
|
||||
syr Syriac
|
||||
tgl tl Tagalog
|
||||
tah Tahitian
|
||||
tgk tg Tajik
|
||||
tmh Tamashek
|
||||
tam ta Tamil
|
||||
tat tt Tatar
|
||||
tel te Telugu
|
||||
ter Tereno
|
||||
tha th Thai
|
||||
bod/tib bo Tibetan
|
||||
tig Tigre
|
||||
tir ti Tigrinya
|
||||
tem Timne
|
||||
tiv Tivi
|
||||
tli Tlingit
|
||||
tog to Tonga (Nyasa)
|
||||
ton Tonga (Tonga Islands)
|
||||
tru Truk
|
||||
tsi Tsimshian
|
||||
tso ts Tsonga
|
||||
tsn tn Tswana
|
||||
tum Tumbuka
|
||||
tur tr Turkish
|
||||
ota Turkish, Ottoman (1500 - 1928)
|
||||
tuk tk Turkmen
|
||||
tyv Tuvinian
|
||||
twi tw Twi
|
||||
uga Ugaritic
|
||||
uig ug Uighur
|
||||
ukr uk Ukrainian
|
||||
umb Umbundu
|
||||
und Undetermined
|
||||
urd ur Urdu
|
||||
uzb uz Uzbek
|
||||
vai Vai
|
||||
ven Venda
|
||||
vie vi Vietnamese
|
||||
vol vo Volapük
|
||||
vot Votic
|
||||
wak Wakashan languages
|
||||
wal Walamo
|
||||
war Waray
|
||||
was Washo
|
||||
cym/wel cy Welsh
|
||||
wol wo Wolof
|
||||
xho xh Xhosa
|
||||
sah Yakut
|
||||
yao Yao
|
||||
yap Yap
|
||||
yid yi Yiddish
|
||||
yor yo Yoruba
|
||||
zap Zapotec
|
||||
zen Zenaga
|
||||
zha za Zhuang
|
||||
zul zu Zulu
|
||||
zun Zuni
|
||||
</pre>
|
||||
<h2><a name="2letter">ISO 639: 2-letter codes</a></h2>
|
||||
<pre>AA "Afar"
|
||||
AB "Abkhazian"
|
||||
AF "Afrikaans"
|
||||
AM "Amharic"
|
||||
AR "Arabic"
|
||||
AS "Assamese"
|
||||
AY "Aymara"
|
||||
AZ "Azerbaijani"
|
||||
BA "Bashkir"
|
||||
BE "Byelorussian"
|
||||
BG "Bulgarian"
|
||||
BH "Bihari"
|
||||
BI "Bislama"
|
||||
BN "Bengali" "Bangla"
|
||||
BO "Tibetan"
|
||||
BR "Breton"
|
||||
CA "Catalan"
|
||||
CO "Corsican"
|
||||
CS "Czech"
|
||||
CY "Welsh"
|
||||
DA "Danish"
|
||||
DE "German"
|
||||
DZ "Bhutani"
|
||||
EL "Greek"
|
||||
EN "English" "American"
|
||||
EO "Esperanto"
|
||||
ES "Spanish"
|
||||
ET "Estonian"
|
||||
EU "Basque"
|
||||
FA "Persian"
|
||||
FI "Finnish"
|
||||
FJ "Fiji"
|
||||
FO "Faeroese"
|
||||
FR "French"
|
||||
FY "Frisian"
|
||||
GA "Irish"
|
||||
GD "Gaelic" "Scots Gaelic"
|
||||
GL "Galician"
|
||||
GN "Guarani"
|
||||
GU "Gujarati"
|
||||
HA "Hausa"
|
||||
HI "Hindi"
|
||||
HR "Croatian"
|
||||
HU "Hungarian"
|
||||
HY "Armenian"
|
||||
IA "Interlingua"
|
||||
IE "Interlingue"
|
||||
IK "Inupiak"
|
||||
IN "Indonesian"
|
||||
IS "Icelandic"
|
||||
IT "Italian"
|
||||
IW "Hebrew"
|
||||
JA "Japanese"
|
||||
JI "Yiddish"
|
||||
JW "Javanese"
|
||||
KA "Georgian"
|
||||
KK "Kazakh"
|
||||
KL "Greenlandic"
|
||||
KM "Cambodian"
|
||||
KN "Kannada"
|
||||
KO "Korean"
|
||||
KS "Kashmiri"
|
||||
KU "Kurdish"
|
||||
KY "Kirghiz"
|
||||
LA "Latin"
|
||||
LN "Lingala"
|
||||
LO "Laothian"
|
||||
LT "Lithuanian"
|
||||
LV "Latvian" "Lettish"
|
||||
MG "Malagasy"
|
||||
MI "Maori"
|
||||
MK "Macedonian"
|
||||
ML "Malayalam"
|
||||
MN "Mongolian"
|
||||
MO "Moldavian"
|
||||
MR "Marathi"
|
||||
MS "Malay"
|
||||
MT "Maltese"
|
||||
MY "Burmese"
|
||||
NA "Nauru"
|
||||
NE "Nepali"
|
||||
NL "Dutch"
|
||||
NO "Norwegian"
|
||||
OC "Occitan"
|
||||
OM "Oromo" "Afan"
|
||||
OR "Oriya"
|
||||
PA "Punjabi"
|
||||
PL "Polish"
|
||||
PS "Pashto" "Pushto"
|
||||
PT "Portuguese"
|
||||
QU "Quechua"
|
||||
RM "Rhaeto-Romance"
|
||||
RN "Kirundi"
|
||||
RO "Romanian"
|
||||
RU "Russian"
|
||||
RW "Kinyarwanda"
|
||||
SA "Sanskrit"
|
||||
SD "Sindhi"
|
||||
SG "Sangro"
|
||||
SH "Serbo-Croatian"
|
||||
SI "Singhalese"
|
||||
SK "Slovak"
|
||||
SL "Slovenian"
|
||||
SM "Samoan"
|
||||
SN "Shona"
|
||||
SO "Somali"
|
||||
SQ "Albanian"
|
||||
SR "Serbian"
|
||||
SS "Siswati"
|
||||
ST "Sesotho"
|
||||
SU "Sudanese"
|
||||
SV "Swedish"
|
||||
SW "Swahili"
|
||||
TA "Tamil"
|
||||
TE "Tegulu"
|
||||
TG "Tajik"
|
||||
TH "Thai"
|
||||
TI "Tigrinya"
|
||||
TK "Turkmen"
|
||||
TL "Tagalog"
|
||||
TN "Setswana"
|
||||
TO "Tonga"
|
||||
TR "Turkish"
|
||||
TS "Tsonga"
|
||||
TT "Tatar"
|
||||
TW "Twi"
|
||||
UK "Ukrainian"
|
||||
UR "Urdu"
|
||||
UZ "Uzbek"
|
||||
VI "Vietnamese"
|
||||
VO "Volapuk"
|
||||
WO "Wolof"
|
||||
XH "Xhosa"
|
||||
YO "Yoruba"
|
||||
ZH "Chinese"
|
||||
ZU "Zulu"
|
||||
</pre>
|
||||
<hr>
|
||||
<p>Document Modified August 9, 1999</p>
|
||||
</body></html>
|
||||
33
tools/build/WindowsInstaller/lang/TranslatedLanguages.nsh
Normal file
@@ -0,0 +1,33 @@
|
||||
!macro LANG LANG_NAME
|
||||
# NSIS language file
|
||||
!insertmacro MUI_LANGUAGE "${LANG_NAME}"
|
||||
# FreeCAD language file
|
||||
!insertmacro LANGFILE_INCLUDE_WITHDEFAULT "lang\${LANG_NAME}.nsh" "lang\english.nsh"
|
||||
!macroend
|
||||
|
||||
# list of all languages the installer is translated to
|
||||
!insertmacro LANG "english" # first language is the default
|
||||
!insertmacro LANG "arabic"
|
||||
!insertmacro LANG "basque"
|
||||
!insertmacro LANG "catalan"
|
||||
!insertmacro LANG "czech"
|
||||
!insertmacro LANG "danish"
|
||||
!insertmacro LANG "dutch"
|
||||
!insertmacro LANG "french"
|
||||
!insertmacro LANG "german"
|
||||
!insertmacro LANG "galician"
|
||||
!insertmacro LANG "hungarian"
|
||||
!insertmacro LANG "indonesian"
|
||||
!insertmacro LANG "italian"
|
||||
!insertmacro LANG "japanese"
|
||||
!insertmacro LANG "norwegian"
|
||||
!insertmacro LANG "polish"
|
||||
!insertmacro LANG "portuguese"
|
||||
!insertmacro LANG "portugueseBR"
|
||||
!insertmacro LANG "romanian"
|
||||
!insertmacro LANG "russian"
|
||||
!insertmacro LANG "slovak"
|
||||
!insertmacro LANG "spanish"
|
||||
!insertmacro LANG "swedish"
|
||||
!insertmacro LANG "turkish"
|
||||
!insertmacro LANG "ukrainian"
|
||||
70
tools/build/WindowsInstaller/lang/arabic.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Arabic
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Arabic"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(تركيب للمستخدم الحالي)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "هذا المساعد سوف يرشدك خلال تركيب $(^NameDA), $\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "بناء سكربتات بايثون..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "إنشاء اختصار سطح المكتب"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "زيارة freecad.org لمشاهدة آخر الاخبار, الدعم والأفكار"
|
||||
|
||||
#${LangFileString} FileTypeTitle "مستند - ليك"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "تركيب لكل المستخدمين؟"
|
||||
${LangFileString} SecFileAssocTitle "اقتران الملف"
|
||||
${LangFileString} SecDesktopTitle "رمز سطح المكتب"
|
||||
|
||||
${LangFileString} SecCoreDescription "ملفات ليك."
|
||||
#${LangFileString} SecAllUsersDescription "تركيب ليك لهذا المستخدم أم لجميع المستخدمين."
|
||||
${LangFileString} SecFileAssocDescription "الملفات بلاحقة .FCStd سوف تفتح تلفائيا ببرنامج ليك."
|
||||
${LangFileString} SecDesktopDescription "رمز ليم على سطح المكتب."
|
||||
#${LangFileString} SecDictionaries "قواميس"
|
||||
#${LangFileString} SecDictionariesDescription "قواميس المدقق الإملائي التي يمكن تنزيلها وتركيبها."
|
||||
|
||||
#${LangFileString} PathName 'مسار الملف $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder 'الملف $\"xxx.exe$\" ليس في المسار المحدد.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'فشل تنزيل قاموس اللغة $\"$R3$\" .'
|
||||
|
||||
#${LangFileString} ConfigInfo "ضبط ليك سيستغرق وفت."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "لم ينفذ سكريبت الضبط"
|
||||
${LangFileString} InstallRunning "المركب يعمل حاليا!"
|
||||
${LangFileString} AlreadyInstalled "ليك ${APP_SERIES_KEY2} تم تركيبه بالفعل!$\r$\n\
|
||||
التركيب على النسخة الحالية غير مفضل إذا كانت النسخة الحالية$\r$\n\
|
||||
تجريبية أو بها مشاكل.$\r$\n\
|
||||
في هذه الحالة من الأفضل إعادة التركيب.$\r$\n\
|
||||
هل تريد بالرغم من ذلك تركيب ليك على النسخة الحالية؟"
|
||||
${LangFileString} NewerInstalled "تحاول تركيب نسخة ليك أقدم من الموجودة حاليا.$\r$\n\
|
||||
إذا كنت تريدها بالتأكيد, عليك حذف النسخة الحالية $OldVersionNumber أولا."
|
||||
|
||||
#${LangFileString} FinishPageMessage "مبروك! تم تركيب ليك بنجاح.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (البدء الأول لليك ربما يستغرق ثوان.)"
|
||||
${LangFileString} FinishPageRun "بدء ليك"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "لم يتم العثور على ليك في سجل النظام.$\r$\n\
|
||||
إختصارات سطح المكتب وقائمة البدء لم يتم حذفها."
|
||||
${LangFileString} UnInstallRunning "يجب إغلاق ليك أولا!"
|
||||
${LangFileString} UnNotAdminLabel "يجب أن يكون لديك صلاحيات المدير لكي تحذف ليك!"
|
||||
${LangFileString} UnReallyRemoveLabel "هل ترغب بإزالة ليك مع كل مكوناته؟"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'تفضيلات مستخدم ليك'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "إزالة مدير ثبت المراجع xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'حذف FreeCAD$\'s ضبط$\r$\n\
|
||||
(مجلد $\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
لك او لكل المستخدمين (إذا كنت المدير).'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "إزالة ليك مع كل مكوناته."
|
||||
70
tools/build/WindowsInstaller/lang/basque.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Basque
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Basque"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Instalatu uneko erabiltzailearentzat)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Morroi honek $(^NameDA) aplikazioaren instalazio urratsetan zehar lagunduko dizu, $\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Python script-ak konpilatzen..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Sortu mahaigaineko lasterbidea"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Bisitatu freecad.org azken berriak, aholkuak eta laguntza lortzeko"
|
||||
|
||||
#${LangFileString} FileTypeTitle "FreeCAD-dokumentua"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Instalatu erabiltzaile guztientzako?"
|
||||
${LangFileString} SecFileAssocTitle "Fitxategiaren esleipenak"
|
||||
${LangFileString} SecDesktopTitle "Mahaigaineko ikonoa"
|
||||
|
||||
${LangFileString} SecCoreDescription "FreeCAD fitxategiak."
|
||||
#${LangFileString} SecAllUsersDescription "Instalatu FreeCAD erabiltzaile guztientzako, edo soilik uneko erabiltzailearentzako."
|
||||
${LangFileString} SecFileAssocDescription ".FCStd luzapeneko fitxategiak FreeCAD-ekin irekiko dira automatikoki."
|
||||
${LangFileString} SecDesktopDescription "FreeCAD ikonoa mahaigainean."
|
||||
#${LangFileString} SecDictionaries "Hiztegia"
|
||||
#${LangFileString} SecDictionariesDescription "Zuzentzaile ortografikoen hiztegiak deskarga eta instala daitezke."
|
||||
|
||||
#${LangFileString} PathName '$\"xxx.exe$\" fitxategiaren bide-izena'
|
||||
#${LangFileString} InvalidFolder '$\"xxx.exe$\" fitxategia ez dago zehaztutako bide-izenean.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Huts egin du $\"$R3$\" hizkuntzaren hiztegia deskargatzean.'
|
||||
|
||||
#${LangFileString} ConfigInfo "FreeCAD-en hurrengo konfigurazioak denbora piskat beharko du."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Ezin izan da konfigurazioaren script-a exekutatu"
|
||||
${LangFileString} InstallRunning "Instalatzailea jadanik exekutatzen ari da."
|
||||
${LangFileString} AlreadyInstalled "FreeCAD ${APP_SERIES_KEY2} jadanik instalatuta dago!$\r$\n\
|
||||
Installing over existing installations is not recommended if the installed version$\r$\n\
|
||||
is a test release or if you have problems with your existing FreeCAD installation.$\r$\n\
|
||||
In these cases better reinstall FreeCAD.$\r$\n\
|
||||
Dou you nevertheles want to install FreeCAD over the existing version?"
|
||||
${LangFileString} NewerInstalled "Instalatuta dagoen FreeCAD baino bertsio zaharragoa instalatzen saiatzen ari zara.$\r$\n\
|
||||
Hori egitea nahi baduzu, lehenbizi existitzen den FreeCAD $OldVersionNumber desinstalatu beharko duzu."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Zorionak! FreeCAD ongi instalatu da.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (FreeCAD aurreneko aldiz abiatzean denbora piskat beharko du.)"
|
||||
${LangFileString} FinishPageRun "Abiarazi FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Ezin da FreeCAD aurkitu erregistroan.$\r$\n\
|
||||
Mahaigaineko eta Hasiera menuko lasterbideak ez dira kenduko."
|
||||
${LangFileString} UnInstallRunning "Aurrenik FreeCAD itxi behar duzu."
|
||||
${LangFileString} UnNotAdminLabel "Administratzailearen baimenak behar dituzu FreeCAD desinstalatzeko."
|
||||
${LangFileString} UnReallyRemoveLabel "Ziur zaude FreeCAD eta bere osagai guztiak kentzea nahi dituzula??"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'FreeCAD-eko erabiltzailearen hobespenak'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "xxx kudeatzailea desinstalatzen du."
|
||||
${LangFileString} SecUnPreferencesDescription 'FreeCAD-en konfigurazioa ezabatzen du$\r$\n\
|
||||
($\"$AppPre\erabiltzailea\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
\${APP_DIR_USERDATA}$\"$\r$\n\
|
||||
zuretzako edo erabiltzaile guztientzako (administratzailea bazara).'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Desinstalatu FreeCAD eta bere osagai guztiak."
|
||||
70
tools/build/WindowsInstaller/lang/catalan.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Catalan
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Catalan"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Installed for Current User)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Aquest assistent us guiarà en la instal·lació del FreeCAD.$\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Compiling Python scripts..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Create desktop shortcut"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Visit freecad.org for the latest news, support and tips"
|
||||
|
||||
#${LangFileString} FileTypeTitle "Document FreeCAD"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Voleu instal·lar-ho per a tots els usuaris?"
|
||||
${LangFileString} SecFileAssocTitle "Associació de fitxers"
|
||||
${LangFileString} SecDesktopTitle "Icona a l'escriptori"
|
||||
|
||||
${LangFileString} SecCoreDescription "Els fitxers del FreeCAD."
|
||||
#${LangFileString} SecAllUsersDescription "Instal·la el FreeCAD per a tots els usuaris o només per a l'usuari actual."
|
||||
${LangFileString} SecFileAssocDescription "Els fitxers amb extensió .FCStd s'obriran automàticament amb el FreeCAD."
|
||||
${LangFileString} SecDesktopDescription "Una icona del FreeCAD a l'escriptori."
|
||||
#${LangFileString} SecDictionaries "Diccionaris"
|
||||
#${LangFileString} SecDictionariesDescription "Spell-checker dictionaries that can be downloaded and installed."
|
||||
|
||||
#${LangFileString} PathName 'Camí al fitxer $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder 'El fitxer $\"xxx.exe$\" no es troba al camí indicat.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Download of dictionary for language $\"$R3$\" failed.'
|
||||
|
||||
#${LangFileString} ConfigInfo "La configuració següent del FreeCAD pot trigar una mica."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "No es pot executar el programa de configuració"
|
||||
${LangFileString} InstallRunning "L'instal·lador ja s'està executant!"
|
||||
${LangFileString} AlreadyInstalled "El FreeCAD ${APP_SERIES_KEY2} ja es troba instal·lat!$\r$\n\
|
||||
Installing over existing installations is not recommended if the installed version$\r$\n\
|
||||
is a test release or if you have problems with your existing FreeCAD installation.$\r$\n\
|
||||
In these cases better reinstall FreeCAD.$\r$\n\
|
||||
Dou you nevertheles want to install FreeCAD over the existing version?"
|
||||
${LangFileString} NewerInstalled "You are trying to install an older version of FreeCAD than what you have installed.$\r$\n\
|
||||
If you really want this, you must uninstall the existing FreeCAD $OldVersionNumber before."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Felicitats! Heu instal·lat correctament el FreeCAD.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (La primera execució del FreeCAD pot trigar alguns segons.)"
|
||||
${LangFileString} FinishPageRun "Executa el FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "No es possible trobar el FreeCAD al registre.$\r$\n\
|
||||
No se suprimiran les dreceres de l'escriptori i del menú inici."
|
||||
${LangFileString} UnInstallRunning "Primer heu de tancar el FreeCAD!"
|
||||
${LangFileString} UnNotAdminLabel "Necessiteu drets d'administrador per desinstal·lar el FreeCAD!"
|
||||
${LangFileString} UnReallyRemoveLabel "Esteu segur de voler suprimir completament el FreeCAD i tots els seus components?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'Preferències d$\'usuari del FreeCAD'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Desinstal·xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Suprimeix les carptes de configuració del FreeCAD$\r$\n\
|
||||
$\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
de tots els usuaris.'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Desinstal·la el FreeCAD i tots els seus components."
|
||||
70
tools/build/WindowsInstaller/lang/czech.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Czech
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Czech"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Installed for Current User)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Tento pomocník vás provede instalací FreeCADu.$\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Compiling Python scripts..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Create desktop shortcut"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Visit freecad.org for the latest news, support and tips"
|
||||
|
||||
#${LangFileString} FileTypeTitle "FreeCAD-dokumentů"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Instalovat pro všechny uživatele?"
|
||||
${LangFileString} SecFileAssocTitle "Asociovat soubory"
|
||||
${LangFileString} SecDesktopTitle "Ikonu na plochu"
|
||||
|
||||
${LangFileString} SecCoreDescription "Soubory FreeCADu."
|
||||
#${LangFileString} SecAllUsersDescription "Instalovat FreeCAD pro všechny uživatele nebo pouze pro současného uživatele."
|
||||
${LangFileString} SecFileAssocDescription "Soubory s příponou .FCStd se automaticky otevřou v FreeCADu."
|
||||
${LangFileString} SecDesktopDescription "Ikonu FreeCADu na plochu."
|
||||
#${LangFileString} SecDictionaries "Slovníky"
|
||||
#${LangFileString} SecDictionariesDescription "Spell-checker dictionaries that can be downloaded and installed."
|
||||
|
||||
#${LangFileString} PathName 'Cesta k souboru $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder 'Soubor $\"xxx.exe$\" není v zadané cestě.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Download of dictionary for language $\"$R3$\" failed.'
|
||||
|
||||
#${LangFileString} ConfigInfo "The following configuration of FreeCAD could take a while."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Nelze spustit konfigurační skript"
|
||||
${LangFileString} InstallRunning "Instalátor je již spuštěn!"
|
||||
${LangFileString} AlreadyInstalled "FreeCAD ${APP_SERIES_KEY2} je již nainstalován!$\r$\n\
|
||||
Installing over existing installations is not recommended if the installed version$\r$\n\
|
||||
is a test release or if you have problems with your existing FreeCAD installation.$\r$\n\
|
||||
In these cases better reinstall FreeCAD.$\r$\n\
|
||||
Dou you nevertheles want to install FreeCAD over the existing version?"
|
||||
${LangFileString} NewerInstalled "You are trying to install an older version of FreeCAD than what you have installed.$\r$\n\
|
||||
If you really want this, you must uninstall the existing FreeCAD $OldVersionNumber before."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Blahopřejeme! FreeCAD byl úspěšně nainstalován.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (První spuštění FreeCADu může trvat delší dobu.)"
|
||||
${LangFileString} FinishPageRun "Spustit FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Nelze nalézt FreeCAD v registrech.$\r$\n\
|
||||
Zástupce na ploše a ve Start menu nebude smazán."
|
||||
${LangFileString} UnInstallRunning "Nejprve musíte zavřít FreeCAD!"
|
||||
${LangFileString} UnNotAdminLabel "Musíte mít administrátorská práva pro odinstalování FreeCADu!"
|
||||
${LangFileString} UnReallyRemoveLabel "Chcete opravdu smazat FreeCAD a všechny jeho komponenty?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'Uživatelská nastavení FreeCADu'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Odinstalovat xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Smazat konfigurační adresář FreeCADu$\r$\n\
|
||||
$\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
pro všechny uživatele.'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Odinstalovat FreeCAD a všechny jeho komponenty."
|
||||
70
tools/build/WindowsInstaller/lang/danish.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Danish
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Danish"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Installed for Current User)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Denne guide vil installere FreeCAD på din computer.$\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Compiling Python scripts..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Create desktop shortcut"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Visit freecad.org for the latest news, support and tips"
|
||||
|
||||
#${LangFileString} FileTypeTitle "FreeCAD-Dokument"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Installer til alle brugere?"
|
||||
${LangFileString} SecFileAssocTitle "Fil-associationer"
|
||||
${LangFileString} SecDesktopTitle "Skrivebordsikon"
|
||||
|
||||
${LangFileString} SecCoreDescription "Filerne til FreeCAD."
|
||||
#${LangFileString} SecAllUsersDescription "Installer FreeCAD til alle brugere, eller kun den aktuelle bruger."
|
||||
${LangFileString} SecFileAssocDescription "Opret association mellem FreeCAD og .FCStd filer."
|
||||
${LangFileString} SecDesktopDescription "Et FreeCAD ikon på skrivebordet"
|
||||
#${LangFileString} SecDictionaries "Ordbøger"
|
||||
#${LangFileString} SecDictionariesDescription "Spell-checker dictionaries that can be downloaded and installed."
|
||||
|
||||
#${LangFileString} PathName 'Sti til filen $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder 'Kunne ikke finde $\"xxx.exe$\".'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Download of dictionary for language $\"$R3$\" failed.'
|
||||
|
||||
#${LangFileString} ConfigInfo "Den følgende konfiguration af FreeCAD vil tage et stykke tid."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Mislykket forsog på at afvikle konfigurations-scriptet"
|
||||
${LangFileString} InstallRunning "Installationsprogrammet kører allerede!"
|
||||
${LangFileString} AlreadyInstalled "FreeCAD ${APP_SERIES_KEY2} er allerede installeret!$\r$\n\
|
||||
Installing over existing installations is not recommended if the installed version$\r$\n\
|
||||
is a test release or if you have problems with your existing FreeCAD installation.$\r$\n\
|
||||
In these cases better reinstall FreeCAD.$\r$\n\
|
||||
Dou you nevertheles want to install FreeCAD over the existing version?"
|
||||
${LangFileString} NewerInstalled "You are trying to install an older version of FreeCAD than what you have installed.$\r$\n\
|
||||
If you really want this, you must uninstall the existing FreeCAD $OldVersionNumber before."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Tillykke!! FreeCAD er installeret.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (Når FreeCAD startes første gang, kan det tage noget tid.)"
|
||||
${LangFileString} FinishPageRun "Start FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Kunne ikke finde FreeCAD i registreringsdatabsen.$\r$\n\
|
||||
Genvejene på skrivebordet og i Start-menuen bliver ikke fjernet"
|
||||
${LangFileString} UnInstallRunning "Du ma afslutte FreeCAD forst!"
|
||||
${LangFileString} UnNotAdminLabel "Du skal have administrator-rettigheder for at afinstallere FreeCAD!"
|
||||
${LangFileString} UnReallyRemoveLabel "Er du sikker på, at du vil slette FreeCAD og alle tilhørende komponenter?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'FreeCAD$\'s user preferences'
|
||||
|
||||
#${LangFileString} SecUnProgDescription 'Afinstallerer programmet $\"xxx$\".'
|
||||
${LangFileString} SecUnPreferencesDescription 'Sletter FreeCAD$\'s konfigurations mappe$\r$\n\
|
||||
$\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
for alle brugere.'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Afinstallerer FreeCAD og alle dets komponenter."
|
||||
70
tools/build/WindowsInstaller/lang/dutch.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Dutch
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Dutch"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Installed for Current User)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Dit installatie programma zal FreeCAD op uw systeem installeren.$\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Compiling Python scripts..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Create desktop shortcut"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Visit freecad.org for the latest news, support and tips"
|
||||
|
||||
#${LangFileString} FileTypeTitle "FreeCAD-Document"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Installeer voor alle gebruikers?"
|
||||
${LangFileString} SecFileAssocTitle "Bestand associaties"
|
||||
${LangFileString} SecDesktopTitle "Bureaublad pictogram"
|
||||
|
||||
${LangFileString} SecCoreDescription "De FreeCAD bestanden."
|
||||
#${LangFileString} SecAllUsersDescription "Installeer FreeCAD voor alle gebruikers of uitsluitend de huidige gebruiker?"
|
||||
${LangFileString} SecFileAssocDescription "Associeer het FreeCAD programma met de .FCStd extensie."
|
||||
${LangFileString} SecDesktopDescription "Een FreeCAD pictogram op het Bureaublad."
|
||||
#${LangFileString} SecDictionaries "Woordenboeken"
|
||||
#${LangFileString} SecDictionariesDescription "Spell-checker dictionaries that can be downloaded and installed."
|
||||
|
||||
#${LangFileString} PathName 'Map met het programma $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder '$\"xxx.exe$\" is niet gevonden.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Download of dictionary for language $\"$R3$\" failed.'
|
||||
|
||||
#${LangFileString} ConfigInfo "De volgende configuratie van FreeCAD zal enige tijd duren."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Mislukte configuratie poging"
|
||||
${LangFileString} InstallRunning "Het installatieprogramma is al gestart!"
|
||||
${LangFileString} AlreadyInstalled "FreeCAD ${APP_SERIES_KEY2} is reeds geinstalleerd!$\r$\n\
|
||||
Installing over existing installations is not recommended if the installed version$\r$\n\
|
||||
is a test release or if you have problems with your existing FreeCAD installation.$\r$\n\
|
||||
In these cases better reinstall FreeCAD.$\r$\n\
|
||||
Dou you nevertheles want to install FreeCAD over the existing version?"
|
||||
${LangFileString} NewerInstalled "You are trying to install an older version of FreeCAD than what you have installed.$\r$\n\
|
||||
If you really want this, you must uninstall the existing FreeCAD $OldVersionNumber before."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Gefeliciteerd! FreeCAD is succesvol geinstalleerd.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (De eerste keer dat u FreeCAD start kan dit enige seconden duren.)"
|
||||
${LangFileString} FinishPageRun "Start FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "FreeCAD is niet gevonden in het Windows register.$\r$\n\
|
||||
Snelkoppelingen op het Bureaublad en in het Start Menu worden niet verwijderd."
|
||||
${LangFileString} UnInstallRunning "U moet FreeCAD eerst afsluiten!"
|
||||
${LangFileString} UnNotAdminLabel "U heeft systeem-beheerrechten nodig om FreeCAD te verwijderen!"
|
||||
${LangFileString} UnReallyRemoveLabel "Weet u zeker dat u FreeCAD en alle componenten volledig wil verwijderen van deze computer?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'FreeCAD$\'s user preferences'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Verwijder xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Verwijder FreeCAD$\'s configuratie map$\r$\n\
|
||||
$\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
voor alle gebruikers.'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Verwijder FreeCAD en alle bijbehorende onderdelen."
|
||||
70
tools/build/WindowsInstaller/lang/english.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: English
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "English"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Installed for Current User)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "This wizard will guide you through the installation of $(^NameDA), $\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Compiling Python scripts..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Create desktop shortcut"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Visit freecad.org/ for the latest news, support and tips"
|
||||
|
||||
#${LangFileString} FileTypeTitle "FreeCAD-Document"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Install for all users?"
|
||||
${LangFileString} SecFileAssocTitle "File associations"
|
||||
${LangFileString} SecDesktopTitle "Desktop icon"
|
||||
|
||||
${LangFileString} SecCoreDescription "The FreeCAD files."
|
||||
#${LangFileString} SecAllUsersDescription "Install FreeCAD for all users or just the current user."
|
||||
${LangFileString} SecFileAssocDescription "Files with a .FCStd extension will automatically open in FreeCAD."
|
||||
${LangFileString} SecDesktopDescription "A FreeCAD icon on the desktop."
|
||||
#${LangFileString} SecDictionaries "Dictionaries"
|
||||
#${LangFileString} SecDictionariesDescription "Spell-checker dictionaries that can be downloaded and installed."
|
||||
|
||||
#${LangFileString} PathName 'Path to the file $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder 'The file $\"xxx.exe$\" is not in the specified path.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Download of dictionary for language $\"$R3$\" failed.'
|
||||
|
||||
#${LangFileString} ConfigInfo "The following configuration of FreeCAD could take a while."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Could not run configure script."
|
||||
${LangFileString} InstallRunning "The installer is already running!"
|
||||
${LangFileString} AlreadyInstalled "FreeCAD ${APP_SERIES_KEY2} is already installed!$\r$\n\
|
||||
Installing over existing installations is not recommended if the installed version$\r$\n\
|
||||
is a test release or if you have problems with your existing FreeCAD installation.$\r$\n\
|
||||
In these cases better reinstall FreeCAD.$\r$\n\
|
||||
Do you nevertheless want to install FreeCAD over the existing version?"
|
||||
${LangFileString} NewerInstalled "You are trying to install an older version of FreeCAD than what you have installed.$\r$\n\
|
||||
If you really want this, you must uninstall the existing FreeCAD $OldVersionNumber before."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Congratulations! FreeCAD has been installed successfully.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (The first start of FreeCAD might take some seconds.)"
|
||||
${LangFileString} FinishPageRun "Launch FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Unable to find FreeCAD in the registry.$\r$\n\
|
||||
Shortcuts on the desktop and in the Start Menu will not be removed."
|
||||
${LangFileString} UnInstallRunning "You must close FreeCAD first!"
|
||||
${LangFileString} UnNotAdminLabel "You must have administrator privileges to uninstall FreeCAD!"
|
||||
${LangFileString} UnReallyRemoveLabel "Are you sure you want to completely remove FreeCAD and all of its components?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'FreeCAD$\'s user preferences'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Uninstalls xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Deletes FreeCAD$\'s configuration$\r$\n\
|
||||
(folder $\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
for you or for all users (if you are admin).'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Uninstall FreeCAD and all of its components."
|
||||
70
tools/build/WindowsInstaller/lang/french.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: French
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "French"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Installation pour l'utilisateur courant)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Cet assistant va vous guider tout au long de l'installation de $(^NameDA).$\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Compilation des scripts Python..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Créer un raccourci sur le bureau"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Consulter les dernières nouvelles, trucs et astuces sur le site freecad.org"
|
||||
|
||||
#${LangFileString} FileTypeTitle "Document FreeCAD"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Installer pour tous les utilisateurs ?"
|
||||
${LangFileString} SecFileAssocTitle "Associations de fichiers"
|
||||
${LangFileString} SecDesktopTitle "Icône du bureau"
|
||||
|
||||
${LangFileString} SecCoreDescription "Les fichiers FreeCAD"
|
||||
#${LangFileString} SecAllUsersDescription "Installer FreeCAD pour tous les utilisateurs, ou seulement pour l$\'utilisateur courant ?"
|
||||
${LangFileString} SecFileAssocDescription "Les fichiers de suffixe .FCStd seront automatiquement ouverts dans FreeCAD."
|
||||
${LangFileString} SecDesktopDescription "Une icône FreeCAD sur le bureau."
|
||||
#${LangFileString} SecDictionaries "Dictionnaires"
|
||||
#${LangFileString} SecDictionariesDescription "Les dictionnaires pour correcteur orthographique qui peuvent être téléchargés et installés."
|
||||
|
||||
#${LangFileString} PathName 'Chemin vers le fichier $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder '$\"xxx.exe$\" introuvable dans le chemin d$\'accès spécifié.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Le chargement du dictionnaire pour la langue $\"$R3$\" a échoué.'
|
||||
|
||||
#${LangFileString} ConfigInfo "La configuration de FreeCAD qui va suivre prendra un moment."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Échec de la tentative de configuration initiale de FreeCAD."
|
||||
${LangFileString} InstallRunning "Le programme d$\'installation est toujours en cours !"
|
||||
${LangFileString} AlreadyInstalled "FreeCAD ${APP_SERIES_KEY2} est déjà installé !$\r$\n\
|
||||
L'installation par dessus les installations existantes n'est pas recommandée si la version installée$\r$\n\
|
||||
est une version de test ou si vous avez des problèmes avec votre installation FreeCAD existante.$\r$\n\
|
||||
Dans ces situations il vaut mieux réinstaller FreeCAD.$\r$\n\
|
||||
Voulez-vous néanmoins installer FreeCAD par dessus la version existante ?"
|
||||
${LangFileString} NewerInstalled "Vous essayez d$\'installer une version de FreeCAD plus ancienne que celle qui est déjà installée.$\r$\n\
|
||||
Si c$\'est ce qu vous voulez, vous devez d$\'abord désinstaller FreeCAD $OldVersionNumber."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Félicitations ! FreeCAD est installé avec succès.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (Le premier démarrage de FreeCAD peut demander quelques secondes.)"
|
||||
${LangFileString} FinishPageRun "Démarrer FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "FreeCAD introuvable dans la base des registres.$\r$\n\
|
||||
Les raccourcis sur le bureau et dans le menu de démarrage ne seront pas supprimés."
|
||||
${LangFileString} UnInstallRunning "Vous devez fermer FreeCAD d$\'abord !"
|
||||
${LangFileString} UnNotAdminLabel "Vous devez avoir les droits d$\'administration pour désinstaller FreeCAD !"
|
||||
${LangFileString} UnReallyRemoveLabel "Êtes vous sûr(e) de vouloir supprimer complètement FreeCAD et tous ses composants ?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'Préférences utilisateurs de FreeCAD'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Désinstalle le gestionnaire de bibliographie xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Supprime le répertoire de configuration de FreeCAD$\r$\n\
|
||||
$\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
pour tous les utilisateurs.'
|
||||
${LangFileString} DialogUnPreferences 'Vous avez choisi de supprimer le répertoire de configuration de FreeCADs.$\r$\n\
|
||||
Cela supprimera également tous les addons FreeCAD installés.$\r$\n\
|
||||
Êtes-vous d$\'accord avec cela ?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Désinstaller FreeCAD et tous ses composants."
|
||||
70
tools/build/WindowsInstaller/lang/galician.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Galician
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Galician"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Installed for Current User)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Este asistente vai-no guiar na instalación do FreeCAD no seu computador.$\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Compiling Python scripts..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Create desktop shortcut"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Visit freecad.org for the latest news, support and tips"
|
||||
|
||||
#${LangFileString} FileTypeTitle "Documento FreeCAD"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Instalar para todos os usuários?"
|
||||
${LangFileString} SecFileAssocTitle "Asociación dos ficheiros"
|
||||
${LangFileString} SecDesktopTitle "Icone do ambiente de traballo"
|
||||
|
||||
${LangFileString} SecCoreDescription "Os ficheiros FreeCAD."
|
||||
#${LangFileString} SecAllUsersDescription "Instalar o FreeCAD monousuário ou multiusuário."
|
||||
${LangFileString} SecFileAssocDescription "Asociar a extensión .FCStd co FreeCAD."
|
||||
${LangFileString} SecDesktopDescription "Cria un icone do FreeCAD no ambiente de traballo."
|
||||
#${LangFileString} SecDictionaries "Dicionarios"
|
||||
#${LangFileString} SecDictionariesDescription "Spell-checker dictionaries that can be downloaded and installed."
|
||||
|
||||
#${LangFileString} PathName 'Camiño ao ficheiro $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder 'O ficheiro $\"xxx.exe$\" non está no camiño especificado.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Download of dictionary for language $\"$R3$\" failed.'
|
||||
|
||||
#${LangFileString} ConfigInfo "A configuración seguinte do FreeCAD irá demorar un pouco."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Non se deu executado o script de configuración"
|
||||
${LangFileString} InstallRunning "O instalador xa está a correr!"
|
||||
${LangFileString} AlreadyInstalled "O FreeCAD ${APP_SERIES_KEY2} xa está instalado!$\r$\n\
|
||||
Installing over existing installations is not recommended if the installed version$\r$\n\
|
||||
is a test release or if you have problems with your existing FreeCAD installation.$\r$\n\
|
||||
In these cases better reinstall FreeCAD.$\r$\n\
|
||||
Dou you nevertheles want to install FreeCAD over the existing version?"
|
||||
${LangFileString} NewerInstalled "You are trying to install an older version of FreeCAD than what you have installed.$\r$\n\
|
||||
If you really want this, you must uninstall the existing FreeCAD $OldVersionNumber before."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Parabéns! O FreeCAD foi instalado con suceso.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (O primeiro início do FreeCAD pode levar alguns segundos.)"
|
||||
${LangFileString} FinishPageRun "Lanzar o FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Non se da achado o FreeCAD no registo.$\r$\n\
|
||||
Non se eliminarán os atallos para o ambiente de traballo e no menu de Início."
|
||||
${LangFileString} UnInstallRunning "Debe fechar o FreeCAD en primeiro lugar!"
|
||||
${LangFileString} UnNotAdminLabel "Precisa de priviléxios de administrador para desinstalar o FreeCAD!"
|
||||
${LangFileString} UnReallyRemoveLabel "Seguro que quer eliminar completamente o FreeCAD e todos os seus componentes?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'Preferéncias de usuário do FreeCAD'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Desinstala xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Elimina as pastas de configuración do FreeCAD$\r$\n\
|
||||
$\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
de todos os usuários.'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Desinstala FreeCAD e todos os seus componentes."
|
||||
71
tools/build/WindowsInstaller/lang/german.nsh
Normal file
@@ -0,0 +1,71 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: German
|
||||
Author: Uwe Stöhr
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "German"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Installiert für den aktuellen Benutzer)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Dieser Assistent wird Sie durch die Installation von $(^NameDA) begleiten.$\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Kompiliere Python Skripte..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Ein Symbol auf der Arbeitsoberfläche erzeugen"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Besuchen Sie freecad.org für aktuelle Neuigkeiten"
|
||||
|
||||
#${LangFileString} FileTypeTitle "FreeCAD-Dokument"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Für alle Nutzer installieren?"
|
||||
${LangFileString} SecFileAssocTitle "Dateizuordnungen"
|
||||
${LangFileString} SecDesktopTitle "Desktopsymbol"
|
||||
|
||||
${LangFileString} SecCoreDescription "Das Programm FreeCAD."
|
||||
#${LangFileString} SecAllUsersDescription "FreeCAD für alle Nutzer oder nur für den aktuellen Nutzer installieren."
|
||||
${LangFileString} SecFileAssocDescription "Vernüpfung zwischen FreeCAD und der .FCStd Dateiendung."
|
||||
${LangFileString} SecDesktopDescription "Verknüpfung zu FreeCAD auf dem Desktop."
|
||||
#${LangFileString} SecDictionaries "Wörterbücher"
|
||||
#${LangFileString} SecDictionariesDescription "Rechtschreibprüfung- Wörterbucher die heruntergeladen und installiert werden können."
|
||||
|
||||
#${LangFileString} PathName 'Pfad zur Datei $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder 'Kann die Datei $\"xxx.exe$\" nicht finden.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Herunterladen des Wörterbuchs für Sprache $\"$R3$\" fehlgeschlagen.'
|
||||
|
||||
#${LangFileString} ConfigInfo "Die folgende Konfiguration von FreeCAD wird eine Weile dauern."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Konnte das Konfigurationsskript nicht ausführen."
|
||||
${LangFileString} InstallRunning "Der Installer läuft bereits!"
|
||||
${LangFileString} AlreadyInstalled "FreeCAD ${APP_SERIES_KEY2} ist bereits installiert!$\r$\n\
|
||||
Das Installieren über bestehende Installationen ist nicht empfohlen, wenn die installierte Version$\r$\n\
|
||||
eine Testversion ist oder wenn es Probleme mit der bestehenden FreeCAD-Installation gibt.$\r$\n\
|
||||
Besser Sie deinstallieren in diesen Fällen FreeCAD zuerst.$\r$\n\
|
||||
Wollen Sie FreeCAD dennoch über die bestehende Version installieren?"
|
||||
${LangFileString} NewerInstalled "Sie versuchen eine Vesion von FreeCAD zu installieren, die älter als die derzeit installierte ist.$\r$\n\
|
||||
Wenn Sie das wirklich wollen, müssen Sie erst das existierende FreeCAD $OldVersionNumber deinstallieren."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Glückwunsch! FreeCAD wurde erfolgreich installiert.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (Der erste Start von FreeCAD kann etwas länger dauern.)"
|
||||
${LangFileString} FinishPageRun "FreeCAD starten"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Kann FreeCAD nicht in der Registry finden.$\r$\n\
|
||||
Desktopsymbole und Einträge im Startmenü können nicht entfernt werden."
|
||||
${LangFileString} UnInstallRunning "Sie müssen FreeCAD zuerst beenden!"
|
||||
${LangFileString} UnNotAdminLabel "Sie benötigen Administratorrechte um FreeCAD zu deinstallieren!"
|
||||
${LangFileString} UnReallyRemoveLabel "Sind Sie sicher, dass sie FreeCAD und all seine Komponenten deinstallieren möchten?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'FreeCADs Benutzereinstellungen'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Deinstalliert xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Löscht FreeCADs Benutzereinstellungen$\r$\n\
|
||||
(Ordner $\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
für Sie oder für alle Benutzer (wenn Sie Admin sind).'
|
||||
${LangFileString} DialogUnPreferences 'Sie haben ausgewählt, die FreeCAD-Benutzereinstellungen zu löschen.$\r$\n\
|
||||
Dies wird auch alle installierten FreeCAD-Addons löschen.$\r$\n\
|
||||
Sind Sie damit einverstanden?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Deinstalliert FreeCAD und all seine Komponenten."
|
||||
70
tools/build/WindowsInstaller/lang/hungarian.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Hungarian
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Hungarian"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Telepítve az aktuális felhasználónak)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "A varázsló segítségével tudja telepíteni a FreeCAD-et.$\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Python parancsfájlok fordítása..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Indítóikon létrehozása Asztalon"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Látogasson el a freecad.org oldalra az aktuális hírekért, támogatásért és tippekért"
|
||||
|
||||
#${LangFileString} FileTypeTitle "FreeCAD-dokumentum"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Telepítés minden felhasználónak"
|
||||
${LangFileString} SecFileAssocTitle "Fájltársítások"
|
||||
${LangFileString} SecDesktopTitle "Parancsikon Asztalra"
|
||||
|
||||
${LangFileString} SecCoreDescription "A FreeCAD futtatásához szükséges fájlok."
|
||||
#${LangFileString} SecAllUsersDescription "Minden felhasználónak telepítsem vagy csak az aktuálisnak?"
|
||||
${LangFileString} SecFileAssocDescription "A .FCStd kiterjesztéssel rendelkező fájlok megnyitása automatikusan a FreeCAD-el történjen."
|
||||
${LangFileString} SecDesktopDescription "FreeCAD-ikon elhelyezése az Asztalon."
|
||||
#${LangFileString} SecDictionaries "Szótárak"
|
||||
#${LangFileString} SecDictionariesDescription "Helyesírás-ellenőrző szótárak, amiket letölthet és telepíthet."
|
||||
|
||||
#${LangFileString} PathName 'A $\"xxx.exe$\" fájl elérési útja'
|
||||
#${LangFileString} InvalidFolder 'Nem találom a $\"xxx.exe$\" fájlt, a megadott helyen.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Szótár letöltése a(z) $\"$R3$\" nyelvhez sikertelen.'
|
||||
|
||||
#${LangFileString} ConfigInfo "A FreeCAD telepítés utáni beállítása hosszú időt vehet igénybe."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Nem tudom végrehajtani a configure parancsfájlt!"
|
||||
${LangFileString} InstallRunning "A telepítő már fut!"
|
||||
${LangFileString} AlreadyInstalled "A FreeCAD ${APP_SERIES_KEY2} már teleptve van!$\r$\n\
|
||||
Installing over existing installations is not recommended if the installed version$\r$\n\
|
||||
is a test release or if you have problems with your existing FreeCAD installation.$\r$\n\
|
||||
In these cases better reinstall FreeCAD.$\r$\n\
|
||||
Dou you nevertheles want to install FreeCAD over the existing version?"
|
||||
${LangFileString} NewerInstalled "A jelenleg telepítettnél régebbi FreeCAD verziót próbál telepíteni.$\r$\n\
|
||||
Ha valóban ezt akarja, először el kell távolítania a meglévő FreeCAD $OldVersionNumber változatot."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Gratulálok! Sikeresen telepítette a FreeCAD-et.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (A program első indítása egy kis időt vehet igénybe...)"
|
||||
${LangFileString} FinishPageRun "FreeCAD indítása"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Nem találom a FreeCAD-et a regisztriben.$\r$\n\
|
||||
Az Asztalon és a Start Menüben található parancsikonok nem lesznek eltávolítva!."
|
||||
${LangFileString} UnInstallRunning "Először be kell zárnia a FreeCAD-et!"
|
||||
${LangFileString} UnNotAdminLabel "A FreeCAD eltávolításhoz rendszergazdai jogokkal kell rendelkeznie!"
|
||||
${LangFileString} UnReallyRemoveLabel "Biztosan abban, hogy el akarja távolítani a FreeCAD-t, minden tartozékával együtt?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'FreeCAD felhasználói beállítások'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "xxx eltávolítása."
|
||||
${LangFileString} SecUnPreferencesDescription 'A FreeCAD beállítások mappa törlése$\r$\n\
|
||||
$\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
minden felhasználónál.'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "A FreeCAD és minden komponensének eltávolítása."
|
||||
70
tools/build/WindowsInstaller/lang/indonesian.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Indonesian
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Indonesian"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Pasang untuk Pengguna Yang Ini)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Program ini akan memandu anda dalam melakukan instalasi FreeCAD.$\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Proses kompilasi skrip Python ..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Membuat pintasan ikon di destop"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Kunjungi freecad.org untuk berita terbaru serta dukungan"
|
||||
|
||||
#${LangFileString} FileTypeTitle "Dokumen-FreeCAD"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Pasang untuk semua pengguna?"
|
||||
${LangFileString} SecFileAssocTitle "Berkas yang terkait"
|
||||
${LangFileString} SecDesktopTitle "Ikon Desktop"
|
||||
|
||||
${LangFileString} SecCoreDescription "Berkas-berkas FreeCAD."
|
||||
#${LangFileString} SecAllUsersDescription "Pasang FreeCAD untuk semua pengguna atau hanya untuk pengguna ini saja."
|
||||
${LangFileString} SecFileAssocDescription "Berkas dengan ekstensi .FCStd akan otomatis dibuka menggunakan FreeCAD."
|
||||
${LangFileString} SecDesktopDescription "Ikon FreeCAD muncul di desktop."
|
||||
#${LangFileString} SecDictionaries "Kamus"
|
||||
#${LangFileString} SecDictionariesDescription "Kamus pemeriksa ejaan yang dapat diunduh dan dipasang."
|
||||
|
||||
#${LangFileString} PathName 'Lokasi tempat berkas $\"xxx.exe$\" berada'
|
||||
#${LangFileString} InvalidFolder 'Berkas $\"xxx.exe$\" tidak berada di lokasi tempat yang dinyatakan.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Download of dictionary for language $\"$R3$\" failed.'
|
||||
|
||||
#${LangFileString} ConfigInfo "Proses konfigurasi FreeCAD selanjutnya akan memerlukan waktu beberapa saat."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Tidak bisa menjalankan skrip konfigurasi"
|
||||
${LangFileString} InstallRunning "Program instalasi sedang berjalan!"
|
||||
${LangFileString} AlreadyInstalled "FreeCAD ${APP_SERIES_KEY2} sudah pernah diinstal!$\r$\n\
|
||||
Installing over existing installations is not recommended if the installed version$\r$\n\
|
||||
is a test release or if you have problems with your existing FreeCAD installation.$\r$\n\
|
||||
In these cases better reinstall FreeCAD.$\r$\n\
|
||||
Dou you nevertheles want to install FreeCAD over the existing version?"
|
||||
${LangFileString} NewerInstalled "Anda akan memasang versi FreeCAD yang lama dari yang sudah terpasang.$\r$\n\
|
||||
Jika memang dikehendaki, anda harus menghapus dulu FreeCAD yang ada, FreeCAD $OldVersionNumber."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Selamat! FreeCAD berhasil diinstal dengan sukses.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (Menjalankan FreeCAD untuk pertama kali memerlukan waktu beberapa detik.)"
|
||||
${LangFileString} FinishPageRun "Menjalankan FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Tidak bisa menemukan FreeCAD di catatan registry.$\r$\n\
|
||||
Shortcuts pada desktop dan yang ada di Menu Start tidak dihapus."
|
||||
${LangFileString} UnInstallRunning "Anda harus menutup FreeCAD terlebih dahulu!"
|
||||
${LangFileString} UnNotAdminLabel "Anda harus berlaku dan mempunyai hak sebagai administrator untuk menghapus FreeCAD!"
|
||||
${LangFileString} UnReallyRemoveLabel "Apakah anda yakin akan menghapus FreeCAD secara menyeluruh termasuk semua komponen yang ada?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'Preferensi pengguna FreeCAD'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Penghapusan program xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Menghapus berkas konfigurasi FreeCAD pada folder$\r$\n\
|
||||
$\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
untuk semua pengguna.'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Penghapusan FreeCAD serta semua komponen yang ada."
|
||||
70
tools/build/WindowsInstaller/lang/italian.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Italian
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Italian"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Installed for Current User)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Verrete guidati nell'installazione di $(^NameDA)$\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Compilazione degli script Python in corso..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Crea icona sul desktop"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Visitate freecad.org per ultime novità, aiuto e suggerimenti"
|
||||
|
||||
#${LangFileString} FileTypeTitle "Documento di FreeCAD"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Installare per tutti gli utenti?"
|
||||
${LangFileString} SecFileAssocTitle "Associazioni dei file"
|
||||
${LangFileString} SecDesktopTitle "Icona sul Desktop"
|
||||
|
||||
${LangFileString} SecCoreDescription "I file di FreeCAD."
|
||||
#${LangFileString} SecAllUsersDescription "Installazione FreeCAD per tutti gli utenti o solo per l'utente attuale."
|
||||
${LangFileString} SecFileAssocDescription "Associa i files con estensione .FCStd al programma FreeCAD."
|
||||
${LangFileString} SecDesktopDescription "Icona FreeCAD sul desktop."
|
||||
#${LangFileString} SecDictionaries "Dizionari"
|
||||
#${LangFileString} SecDictionariesDescription "Dizionari per il controllo ortografico che possono essere scaricati e installati."
|
||||
|
||||
#${LangFileString} PathName 'Percorso del file $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder 'Il file $\"xxx.exe$\" non è nel percorso indicato.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Lo scaricamento del dizionario per la lingua $\"$R3$\" non e$\' andato a buon fine.'
|
||||
|
||||
#${LangFileString} ConfigInfo "La seguente configurazione di FreeCAD richiederà un po' di tempo."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Fallito tentativo di eseguire lo script di configurazione"
|
||||
${LangFileString} InstallRunning "Il programma di installazione è già in esecuzione!"
|
||||
${LangFileString} AlreadyInstalled "FreeCAD ${APP_SERIES_KEY2} è già installato!$\r$\n\
|
||||
Procedere con l'installazione su quella esistente non è raccomandabile se la versione version$\r$\n\
|
||||
è una release di test o se avete problemi con la vostra installazione corrente di FreeCAD.$\r$\n\
|
||||
In questi casi è preferibile installare nuovamente FreeCAD.$\r$\n\
|
||||
Volete procedere comunque con l'installazione di FreeCAD su quella esistente?"
|
||||
${LangFileString} NewerInstalled "Si sta procedendo ad installare una versione di FreeCAD precedente a quella in uso.$\r$\n\
|
||||
Se si vuole procedere, è necessario prima disinstallare la versione FreeCAD $OldVersionNumber."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Congratulazioni! FreeCAD è stato installato con successo.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (Il primo avvio di FreeCAD potrebbe richiedere qualche secondo in più.)"
|
||||
${LangFileString} FinishPageRun "Lancia FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Non riesco a trovare FreeCAD nel registro.$\r$\n\
|
||||
I collegamenti sul desktop e nel menu Start non saranno rimossi."
|
||||
${LangFileString} UnInstallRunning "È necessario chiudere FreeCAD!"
|
||||
${LangFileString} UnNotAdminLabel "Occorrono i privilegi da amministratore per rimuovere FreeCAD!"
|
||||
${LangFileString} UnReallyRemoveLabel "Siete sicuri di voler rimuovere completamente FreeCAD e tutti i suoi componenti?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'Impostazioni personali di FreeCAD'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Rimuove xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Elimina la cartella con la configurazione di FreeCAD$\r$\n\
|
||||
$\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
per tutti gli utenti.'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Rimuove FreeCAD e tutti i suoi componenti."
|
||||
70
tools/build/WindowsInstaller/lang/japanese.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Japanese
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Japanese"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(現ユーザー用に導入を行う)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "このウィザードが、あなたのFreeCAD導入作業中のご案内をします。$\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Pythonスクリプトをコンパイルしています..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "デスクトップにショートカットを作成する"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "freecad.orgを開いて最新ニュースやサポート、ヒントなどを入手する"
|
||||
|
||||
#${LangFileString} FileTypeTitle "FreeCAD文書"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "すべてのユーザー用に導入を行いますか?"
|
||||
${LangFileString} SecFileAssocTitle "ファイル関連付け"
|
||||
${LangFileString} SecDesktopTitle "デスクトップ・アイコン"
|
||||
|
||||
${LangFileString} SecCoreDescription "FreeCADのファイル。"
|
||||
#${LangFileString} SecAllUsersDescription "FreeCADをすべてのユーザー用に導入するか、現在のユーザー向けだけに導入するか。"
|
||||
${LangFileString} SecFileAssocDescription "拡張子が.FCStdのファイルは自動的にFreeCADで開かれる。"
|
||||
${LangFileString} SecDesktopDescription "デスクトップ上のFreeCADアイコン"
|
||||
#${LangFileString} SecDictionaries "辞書"
|
||||
#${LangFileString} SecDictionariesDescription "ダウンロード及び導入が可能なスペルチェック用辞書"
|
||||
|
||||
#${LangFileString} PathName '$\"xxx.exe$\"ファイルへのパス'
|
||||
#${LangFileString} InvalidFolder '指定されたパスに$\"xxx.exe$\"ファイルが見つかりません。'
|
||||
|
||||
#${LangFileString} DictionariesFailed '言語$\"$R3$\"用辞書のダウンロードに失敗しました。'
|
||||
|
||||
#${LangFileString} ConfigInfo "以下のFreeCADの設定には少々時間がかかります。"
|
||||
|
||||
#${LangFileString} RunConfigureFailed "configureスクリプトを実行することができませんでした"
|
||||
${LangFileString} InstallRunning "導入プログラムは既に動作中です!"
|
||||
${LangFileString} AlreadyInstalled "FreeCAD${APP_SERIES_KEY2}は既に導入済みです!$\r$\n\
|
||||
導入済みのバージョンがテスト版であったり、導入済みFreeCADで問題がある場合には、$\r$\n\
|
||||
上書き導入作業は推奨されません。これらの場合には、FreeCADを最初から再導入する$\r$\n\
|
||||
ことが推奨されます。$\r$\n\
|
||||
これらを承知の上で、既存のFreeCADを上書きしますか?"
|
||||
${LangFileString} NewerInstalled "あなたは、既に導入済みのFreeCADよりも古い版を導入しようとしています。$\r$\n\
|
||||
本当にそうしたいのであれば、既存の FreeCAD $OldVersionNumber をまず導入解除してください。"
|
||||
|
||||
#${LangFileString} FinishPageMessage "おめでとうございます!FreeCADが正しく導入されました。$\r$\n\
|
||||
# $\r$\n\
|
||||
# 初回のFreeCADの起動には時間がかかります。)"
|
||||
${LangFileString} FinishPageRun "FreeCADを起動する"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "レジストリにFreeCADが見当たりません。$\r$\n\
|
||||
デスクトップとスタートメニューのショートカットは削除されません。"
|
||||
${LangFileString} UnInstallRunning "まずFreeCADを閉じてください!"
|
||||
${LangFileString} UnNotAdminLabel "FreeCADの導入解除を行うには、管理者権限を持っていなくてはなりません!"
|
||||
${LangFileString} UnReallyRemoveLabel "本当に、FreeCADとすべての附属コンポーネントを削除してしまう積もりですか?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'FreeCADのユーザー設定'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "文献管理プログラムxxxの導入解除を行います。"
|
||||
${LangFileString} SecUnPreferencesDescription 'ユーザー共通のFreeCADの設定フォルダ$\r$\n\
|
||||
$\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
を削除します。'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "FreeCADとすべての附属コンポーネントの導入解除を行います。"
|
||||
70
tools/build/WindowsInstaller/lang/norwegian.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Norwegian
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Norwegian"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Installer for denne brukeren)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Denne veiviseren installerer FreeCAD på datamaskinen din.$\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Kompilerer Python script..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Lager snarveg på skrivebordet"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Besøk freecad.org for de seneste nyhetene, hjelp og støtte"
|
||||
|
||||
#${LangFileString} FileTypeTitle "FreeCAD-dokument"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Installer for alle brukere?"
|
||||
${LangFileString} SecFileAssocTitle "Fil-assosiasjoner"
|
||||
${LangFileString} SecDesktopTitle "Skrivebordsikon"
|
||||
|
||||
${LangFileString} SecCoreDescription "FreeCAD-filene."
|
||||
#${LangFileString} SecAllUsersDescription "Installer FreeCAD for alle brukere, eller kun for denne brukeren."
|
||||
${LangFileString} SecFileAssocDescription "Filer med endelsen .FCStd åpnes automatisk i FreeCAD."
|
||||
${LangFileString} SecDesktopDescription "Et FreeCAD-ikon på skrivebordet."
|
||||
#${LangFileString} SecDictionaries "Ordbøker"
|
||||
#${LangFileString} SecDictionariesDescription "Ordbøker til rettskrivningsprogram som kan lastes ned og installeres."
|
||||
|
||||
#${LangFileString} PathName 'Stien til filen $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder 'Filen $\"xxx.exe$\" fins ikke i den oppgitte mappa.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Nedlastingen av ordliste for språket $\"$R3$\" feilet.'
|
||||
|
||||
#${LangFileString} ConfigInfo "Konfigurasjon av FreeCAD vil ta en stund."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Fikk ikke kjørt konfigurasjonsscriptet"
|
||||
${LangFileString} InstallRunning "Installasjonsprogrammet er allerede i gang!"
|
||||
${LangFileString} AlreadyInstalled "FreeCAD ${APP_SERIES_KEY2} er allerede installert!$\r$\n\
|
||||
Vi anbefaler ikke å installere over en eksisterende installasjon hvis den installere versjonen$\r$\n\
|
||||
er en testversjon eller om du har problemer med den eksisterende installasjonen.$\r$\n\
|
||||
I slike tilfeller er det bedre å reinstallere FreeCAD.$\r$\n\
|
||||
Vil du likevel installere FreeCAD over den eksisterende versjonen?"
|
||||
${LangFileString} NewerInstalled "Du prøver å installere en eldre versjon av FreeCAD enn den du har installert fra før.$\r$\n\
|
||||
Dersom du ønsker dette må du avinstallere FreeCAD $OldVersionNumber først."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Gratulerer!! FreeCAD er installert.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (Første gangs oppstart av FreeCAD kan ta noen sekunder.)"
|
||||
${LangFileString} FinishPageRun "Start FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Fant ikke FreeCAD i registeret.$\r$\n\
|
||||
Snarveier på skrivebordet og i startmenyen fjernes ikke."
|
||||
${LangFileString} UnInstallRunning "Du må avslutte FreeCAD først!"
|
||||
${LangFileString} UnNotAdminLabel "Du må ha administratorrettigheter for å fjerne FreeCAD!"
|
||||
${LangFileString} UnReallyRemoveLabel "Er du sikker på at du vil fjerne FreeCAD og alle tilhørende komponenter?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'FreeCAD sine bruker innstillinger'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Avinstallerer xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Sletter FreeCAD sine konfigurasjonsmapper$\r$\n\
|
||||
$\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
for alle brukere.'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Avinstallerer FreeCAD og alle delkomponenter."
|
||||
70
tools/build/WindowsInstaller/lang/polish.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Polish
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Polish"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Zainstalowane dla bieżącego użytkownika)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Kreator przeprowadzi Ciebie przez proces instalacji FreeCAD$\'a.$\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Kompilowanie skryptów Python..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Utwórz skrót na pulpicie"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Odwiedź freecad.org by poznać wiadomości i wskazówki lub skorzystać ze wsparcia"
|
||||
|
||||
#${LangFileString} FileTypeTitle "Dokument FreeCAD"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Instalacja dla wszystkich użytkowników?"
|
||||
${LangFileString} SecFileAssocTitle "Skojarzenie plików .FCStd"
|
||||
${LangFileString} SecDesktopTitle "Ikona na pulpicie"
|
||||
|
||||
${LangFileString} SecCoreDescription "Pliki FreeCAD$\'a."
|
||||
#${LangFileString} SecAllUsersDescription "Instalacja dla wszystkich użytkowników lub tylko dla bieżącego użytkownika."
|
||||
${LangFileString} SecFileAssocDescription "Skojarzenie FreeCAD-a z plikami o rozszerzeniu .FCStd."
|
||||
${LangFileString} SecDesktopDescription "Ikona FreeCAD$\'a na pulpicie."
|
||||
#${LangFileString} SecDictionaries "Słowniki"
|
||||
#${LangFileString} SecDictionariesDescription "Słowniki sprawdzania pisowni, które mogą zostać pobrane i zainstalowane."
|
||||
|
||||
#${LangFileString} PathName 'Ścieżka do pliku $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder 'Plik $\"xxx.exe$\" nie znajduje się w podanej ścieżce.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Pobranie słownika dla języka $\"$R3$\" nie powiodło się.'
|
||||
|
||||
#${LangFileString} ConfigInfo "Dalsza konfiguracja FreeCAD$\'a chwilę potrwa."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Niedana próba wykonania skryptu konfiguracyjnego"
|
||||
${LangFileString} InstallRunning "Instalator jest już uruchomiony!"
|
||||
${LangFileString} AlreadyInstalled "FreeCAD ${APP_SERIES_KEY2} jest już zainstalowany!$\r$\n\
|
||||
Installing over existing installations is not recommended if the installed version$\r$\n\
|
||||
is a test release or if you have problems with your existing FreeCAD installation.$\r$\n\
|
||||
In these cases better reinstall FreeCAD.$\r$\n\
|
||||
Dou you nevertheles want to install FreeCAD over the existing version?"
|
||||
${LangFileString} NewerInstalled "Próbujesz zainstalować starszą wersję FreeCAD, niż ta która jest już zainstalowana.$\r$\n\
|
||||
Jeżeli naprawdę chcesz tego dokonać, musisz wpierw odinstalować FreeCAD $OldVersionNumber."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Gratulacje! FreeCAD został pomyślnie zainstalowany.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (Pierwsze uruchomienie może potrwać kilka sekund.)"
|
||||
${LangFileString} FinishPageRun "Uruchom FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Nie można znaleźć FreeCAD$\'a w rejestrze.$\r$\n\
|
||||
Skróty na pulpicie i w menu Start nie zostaną usunięte."
|
||||
${LangFileString} UnInstallRunning "Musisz najpierw zamknąć FreeCAD$\'a!"
|
||||
${LangFileString} UnNotAdminLabel "Musisz posiadać prawa administratora do deinstalacji programu FreeCAD."
|
||||
${LangFileString} UnReallyRemoveLabel "Czy na pewno chcesz usunąć FreeCAD$\'a i wszystkie jego komponenty?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'Preferencje użytkownika FreeCAD$\'a'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Deinstalacja xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Usuwa folder konfiguracji FreeCAD$\'a$\r$\n\
|
||||
$\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
wszystkim użytkownikom.'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Deinstalacja FreeCAD i wszystkich jego komponentów."
|
||||
70
tools/build/WindowsInstaller/lang/portuguese.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Portuguese
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Portuguese"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Instalado para o Utilizador Atual)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Este assistente de instalação irá guiá-lo através da instalação do FreeCAD.$\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Compilando os scripts de Python..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Criar um atalho no ambiente de trabalho"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Visite freecad.org para as últimas notícias, suporte e dicas"
|
||||
|
||||
#${LangFileString} FileTypeTitle "Documento FreeCAD"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Instalar para todos os utilizadores?"
|
||||
${LangFileString} SecFileAssocTitle "Associação dos ficheiros"
|
||||
${LangFileString} SecDesktopTitle "Icone do ambiente de trabalho"
|
||||
|
||||
${LangFileString} SecCoreDescription "Os ficheiros FreeCAD."
|
||||
#${LangFileString} SecAllUsersDescription "Instalar o FreeCAD para todos os utilizadores ou apenas para o presente utilizador."
|
||||
${LangFileString} SecFileAssocDescription "Os ficheiros com a extensão .FCStd irão abrir automaticamente no FreeCAD."
|
||||
${LangFileString} SecDesktopDescription "Um icone do FreeCAD no ambiente de trabalho."
|
||||
#${LangFileString} SecDictionaries "Dicionários"
|
||||
#${LangFileString} SecDictionariesDescription "Dicionários do corretor ortográfico que podem ser descarregados e instalados."
|
||||
|
||||
#${LangFileString} PathName 'Caminho ao ficheiro $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder 'O ficheiro $\"xxx.exe$\" não está no caminho especificado.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Falha ao descarregar o dicionário para o idioma $\"$R3$\".'
|
||||
|
||||
#${LangFileString} ConfigInfo "A configuração seguinte do FreeCAD irá demorar um bocado."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Não foi possível executar o script de configuração"
|
||||
${LangFileString} InstallRunning "O instalador já está a correr!"
|
||||
${LangFileString} AlreadyInstalled "O FreeCAD ${APP_SERIES_KEY2} já está instalado!$\r$\n\
|
||||
Não é recomendado instalar sobre uma instalação já existente se a versão instalada$\r$\n\
|
||||
é uma versão de teste ou se tiver problemas com a instalação atual.$\r$\n\
|
||||
Nestes casos é melhor reinstalar o FreeCAD$\r$\n\
|
||||
Quer continuar na mesma a instalar o FreeCAD sobre a versão existente?"
|
||||
${LangFileString} NewerInstalled "Está a tentar instalar uma versão mais antiga do que a que tem instalada.$\r$\n\
|
||||
Se realmente quer fazer isto deve antes desinstalar o FreeCAD $OldVersionNumber."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Parabéns! O FreeCAD foi instalado com sucesso.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (O primeiro início do FreeCAD pode levar alguns segundos.)"
|
||||
${LangFileString} FinishPageRun "Lançar o FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Incapaz de encontrar o FreeCAD no registry.$\r$\n\
|
||||
Os atalhos para o ambiente de trabalho no menu Start não serão removidos."
|
||||
${LangFileString} UnInstallRunning "Deve fechar o FreeCAD em primeiro lugar!"
|
||||
${LangFileString} UnNotAdminLabel "Precisa de privilégios de administrador para desinstalar o FreeCAD!"
|
||||
${LangFileString} UnReallyRemoveLabel "Tem a certeza que quer remover completamente o FreeCAD e todas as suas componentes?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'Preferências de utilizador do FreeCAD'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Desinstala xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Apaga as pastas de configuração do FreeCAD$\r$\n\
|
||||
$\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
de todos os utilizadores.'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Desinstala FreeCAD e todas as suas componentes."
|
||||
70
tools/build/WindowsInstaller/lang/portugueseBR.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Brazilian Portuguese
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "PortugueseBR"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Instalado para o Usuário Atual)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Este assistente guiará você durante a instalação do $(^NameDA), $\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Compilando scripts Python..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Criar atalho na área de trabalho"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Visite freecad.org para ver as últimas novidades do FreeCAD!"
|
||||
|
||||
#${LangFileString} FileTypeTitle "Documento-FreeCAD"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Instalar para todos os usuários?"
|
||||
${LangFileString} SecFileAssocTitle "Associações de arquivos"
|
||||
${LangFileString} SecDesktopTitle "Ícone de área de trabalho"
|
||||
|
||||
${LangFileString} SecCoreDescription "Os arquivos do FreeCAD."
|
||||
#${LangFileString} SecAllUsersDescription "Instalar o FreeCAD para todos os usuários ou apenas para o usuário atual."
|
||||
${LangFileString} SecFileAssocDescription "Arquivos com a extensão .FCStd serão abertos automaticamente no FreeCAD."
|
||||
${LangFileString} SecDesktopDescription "Um ícone do FreeCAD na área de trabalho."
|
||||
#${LangFileString} SecDictionaries "Dicionários"
|
||||
#${LangFileString} SecDictionariesDescription "Dicionários ortográficos que podem ser baixados e instalados."
|
||||
|
||||
#${LangFileString} PathName 'Caminho para o arquivo $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder 'O arquivo $\"xxx.exe$\" não existe no caminho especificado.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Ocorreu uma falha ao baixar o dicionário ortográfico do idioma $\"$R3$\".'
|
||||
|
||||
#${LangFileString} ConfigInfo "A configuração do FreeCAD que será feita a seguir vai demorar bastante."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Não foi possível executar o script de configuração"
|
||||
${LangFileString} InstallRunning "O instalador já está em execução!"
|
||||
${LangFileString} AlreadyInstalled "O FreeCAD ${APP_SERIES_KEY2} já está instalado!$\r$\n\
|
||||
Não é recomendado instalar sobre uma instalação existente se a versão já instalada$\r$\n\
|
||||
for uma versão de teste ou se houver algum problema com a instalação existente do FreeCAD.$\r$\n\
|
||||
Nesses casos é melhor reinstalar o FreeCAD.$\r$\n\
|
||||
Deseja instalar sobre a versão existente mesmo assim?"
|
||||
${LangFileString} NewerInstalled "A versão que você está tentando instalar é mais antiga que aquela que já está instalada.$\r$\n\
|
||||
Se isso for realmente o que deseja, primeiro desinstale o FreeCAD $OldVersionNumber."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Parabéns! O FreeCAD foi instalado com sucesso.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (A primeira execução do FreeCAD pode demorar alguns segundos.)"
|
||||
${LangFileString} FinishPageRun "Executar o FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Não foi possível encontrar o FreeCAD no Registro.$\r$\n\
|
||||
Os atalhos na área de trabalho e no Menu Iniciar não serão removidos."
|
||||
${LangFileString} UnInstallRunning "É necessário fechar o FreeCAD primeiro!"
|
||||
${LangFileString} UnNotAdminLabel "Para desinstalar o FreeCAD é necessário ter privilégios de administrador!"
|
||||
${LangFileString} UnReallyRemoveLabel "Tem certeza que deseja remover completamente o FreeCAD e todos os seus componentes?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'Preferências de usuário do FreeCAD'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Desinstala xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Exclui a configuração do FreeCAD$\r$\n\
|
||||
(pasta $\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
para você ou para todos os usuários (se você for um administrador)).'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Desinstalar o FreeCAD e todos os seus componentes."
|
||||
70
tools/build/WindowsInstaller/lang/romanian.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Romanian
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Romanian"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Installed for Current User)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Acest asistent vă va ghida în procesul de instalare a programului FreeCAD. $\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Compiling Python scripts..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Create desktop shortcut"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Visit freecad.org for the latest news, support and tips"
|
||||
|
||||
#${LangFileString} FileTypeTitle "Document FreeCAD"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Doriţi să instalaţi pentru toţi utilizatorii?"
|
||||
${LangFileString} SecFileAssocTitle "Asocierea fişierelor"
|
||||
${LangFileString} SecDesktopTitle "Iconiţă pe desktop"
|
||||
|
||||
${LangFileString} SecCoreDescription "Fişierele FreeCAD."
|
||||
#${LangFileString} SecAllUsersDescription "Instalează FreeCAD pentru toţi utilizatorii sau doar pentru utilizatorul curent."
|
||||
${LangFileString} SecFileAssocDescription "Fişierele cu extensia .FCStd vor fi deschise automat cu FreeCAD."
|
||||
${LangFileString} SecDesktopDescription "A iconiţă FreeCAD pe desktop."
|
||||
#${LangFileString} SecDictionaries "Dicționare"
|
||||
#${LangFileString} SecDictionariesDescription "Spell-checker dictionaries that can be downloaded and installed."
|
||||
|
||||
#${LangFileString} PathName 'Calea către fişierul $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder 'Fişierul $\"xxx.exe$\" nu se află în calea specificată.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Download of dictionary for language $\"$R3$\" failed.'
|
||||
|
||||
#${LangFileString} ConfigInfo "Configurarea programului FreeCAD va dura o perioadă de timp."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Nu am putut executa scriptul de configurare"
|
||||
${LangFileString} InstallRunning "Programul de instalare este deja pornit!"
|
||||
${LangFileString} AlreadyInstalled "FreeCAD ${APP_SERIES_KEY2} este deja instalat!$\r$\n\
|
||||
Installing over existing installations is not recommended if the installed version$\r$\n\
|
||||
is a test release or if you have problems with your existing FreeCAD installation.$\r$\n\
|
||||
In these cases better reinstall FreeCAD.$\r$\n\
|
||||
Dou you nevertheles want to install FreeCAD over the existing version?"
|
||||
${LangFileString} NewerInstalled "You are trying to install an older version of FreeCAD than what you have installed.$\r$\n\
|
||||
If you really want this, you must uninstall the existing FreeCAD $OldVersionNumber before."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Felicitări! FreeCAD a fost instalat cu succes.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (Prima oară cînd porniţi FreeCAD s-ar putea să dureze cîteva secunde.)"
|
||||
${LangFileString} FinishPageRun "Lansează FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Nu am găsit FreeCAD în registri.$\r$\n\
|
||||
Scurtăturile de pe desktop şi Start Menu nu vor fi şterse."
|
||||
${LangFileString} UnInstallRunning "Trebuie să inchideţi FreeCAD prima oară!"
|
||||
${LangFileString} UnNotAdminLabel "Trebuie să aveţi drepturi de administrator pentru dezinstalarea programului FreeCAD!"
|
||||
${LangFileString} UnReallyRemoveLabel "Sunteţi sigur că doriţi să dezinstalaţi programul FreeCAD şi toate componentele lui?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'Preferinţele utilizatorului pentru FreeCAD'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Dezinstalează xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Şterge directorul cu setările FreeCAD$\r$\n\
|
||||
$\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
pentru toţi utilizatorii.'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Dezinstalaţi programul FreeCAD şi toate componentele lui."
|
||||
70
tools/build/WindowsInstaller/lang/russian.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Russian
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Russian"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Установлено для текущего пользователя)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Этот мастер проведет вас через процесс установки $(^NameDA). $\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Компиляция скриптов Python..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Создать ярлык на рабочем столе"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Перейти на freecad.org за новостями, поддержкой и советами"
|
||||
|
||||
#${LangFileString} FileTypeTitle "FreeCAD-Document"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Установить для всех пользователей?"
|
||||
${LangFileString} SecFileAssocTitle "Ассоциации файлов"
|
||||
${LangFileString} SecDesktopTitle "Значок на рабочем столе"
|
||||
|
||||
${LangFileString} SecCoreDescription "Файлы FreeCAD."
|
||||
#${LangFileString} SecAllUsersDescription "Установить FreeCAD для всех пользователей или только для текущего пользователя."
|
||||
${LangFileString} SecFileAssocDescription "Файлы с расширением .FCStd будут автоматически открываться в FreeCAD."
|
||||
${LangFileString} SecDesktopDescription "Значок FreeCAD на рабочем столе."
|
||||
#${LangFileString} SecDictionaries "Словари"
|
||||
#${LangFileString} SecDictionariesDescription "Словари для проверки орфографии, которые можно скачать и установить."
|
||||
|
||||
#${LangFileString} PathName 'Путь к файлу $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder 'Файл $\"xxx.exe$\" отсутствует по этому пути.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Не удалось загрузить словарь для языка $\"$R3$\".'
|
||||
|
||||
#${LangFileString} ConfigInfo "Следующая конфигурация FreeCAD займет некоторое время."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Не удалось выполнить сценарий настройки"
|
||||
${LangFileString} InstallRunning "Установщик уже запущен!"
|
||||
${LangFileString} AlreadyInstalled "FreeCAD ${APP_SERIES_KEY2} уже установлен!$\r$\n\
|
||||
Установка поверх существующих установок не рекомендуется, если установленная версия$\r$\n\
|
||||
является тестовым выпуском или у вас возникли проблемы с существующей установкой FreeCAD.$\r$\n\
|
||||
В этих случаях лучше переустановить FreeCAD.$\r$\n\
|
||||
Вы все равно хотите установить FreeCAD поверх существующей версии?"
|
||||
${LangFileString} NewerInstalled "Вы пытаетесь установить более старую версию FreeCAD, чем уже установленная.$\r$\n\
|
||||
Если вы действительно хотите этого, то сначала необходимо удалить существующий FreeCAD $OldVersionNumber."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Поздравляем! FreeCAD был успешно установлен.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (Первый запуск FreeCAD может занять несколько секунд.)"
|
||||
${LangFileString} FinishPageRun "Запустить FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Не удалось найти FreeCAD в реестре.$\r$\n\
|
||||
Ярлыки на рабочем столе и в меню Пуск не будут удалены."
|
||||
${LangFileString} UnInstallRunning "Вы должны сначала закрыть FreeCAD!"
|
||||
${LangFileString} UnNotAdminLabel "Необходимо иметь права администратора для удаления FreeCAD!"
|
||||
${LangFileString} UnReallyRemoveLabel "Вы действительно хотите полностью удалить FreeCAD и все его компоненты?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'Пользовательские настройки FreeCAD'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Удалить менеджер xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Удалить настройки FreeCAD$\r$\n\
|
||||
(каталог $\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
для вас или для всех пользователей (если вы администратор).'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Удалить FreeCAD и все его компоненты."
|
||||
70
tools/build/WindowsInstaller/lang/slovak.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Slovak
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Slovak"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Inštalované pre súčasného užívateľa)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Tento sprievodca Vám pomáha inštalovať FreeCAD.$\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Kompilácia Python skriptov..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Vytvoriť skratku pre pracovnú plochu"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Navštívte freecad.org pre posledné novinky, podporu a tipy"
|
||||
|
||||
#${LangFileString} FileTypeTitle "FreeCAD dokument"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Inštalovať pre všetkých užívateľov?"
|
||||
${LangFileString} SecFileAssocTitle "Asociácie súborov"
|
||||
${LangFileString} SecDesktopTitle "Ikona pracovnej plochy"
|
||||
|
||||
${LangFileString} SecCoreDescription "Súbory FreeCADu."
|
||||
#${LangFileString} SecAllUsersDescription "Inštalovať FreeCAD pre všetkých užívateľov alebo len pre súčasného užívateľa."
|
||||
${LangFileString} SecFileAssocDescription "Súbory s rozšírením .FCStd sa automaticky otvárajú v FreeCADe."
|
||||
${LangFileString} SecDesktopDescription "Ikona FreeCADa na pracovnej ploche."
|
||||
#${LangFileString} SecDictionaries "Slovníky"
|
||||
#${LangFileString} SecDictionariesDescription "Slovníky pre kontrolu pravopisu ktoré možno načítať a inštalovať."
|
||||
|
||||
#${LangFileString} PathName 'Cesta na súbor $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder 'Súbor $\"xxx.exe$\" nie je na špecifikovanej ceste.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Načítanie slovníka pre jazyk $\"$R3$\" zlyhalo.'
|
||||
|
||||
#${LangFileString} ConfigInfo "Nasledujúca konfigurácia FreeCADu trochu potrvá."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Nedal sa spustiť konfiguračný skript"
|
||||
${LangFileString} InstallRunning "Inštalačný program už beží!"
|
||||
${LangFileString} AlreadyInstalled "FreeCAD ${APP_SERIES_KEY2} je už inštalovaný!$\r$\n\
|
||||
Inštalovať ponad existujúce inštalácie sa nedoporučuje keď inštalovaná verzia$\r$\n\
|
||||
je testovné vydanie alebo keď máte problémy s existujúcou inštaláciou.$\r$\n\
|
||||
V takýchto prípadoch je lepšie reinštalovať FreeCAD.$\r$\n\
|
||||
Napriek tomu chcete inštalovať FreeCAD ponad existujúcu verziu?"
|
||||
${LangFileString} NewerInstalled "Pokúšate sa inštalovať verziu FreeCADu ktorá je staršia ako tá ktorá je inštalovaná.$\r$\n\
|
||||
Keď to naozaj chcete, odinštalujte najprv existujúci FreeCAD $OldVersionNumber."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Gratulácia! FreeCAD bol úspešne inštalovaný.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (Prvý FreeCAD štart môže trvať niekoľko sekúnd.)"
|
||||
${LangFileString} FinishPageRun "Spustiť FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Nemôžem nájsť FreeCAD v registre.$\r$\n\
|
||||
Skratky na pracovnej ploche a v štartovacom Menu sa nedajú odstrániť."
|
||||
${LangFileString} UnInstallRunning "Najprv treba zavrieť FreeCAD!"
|
||||
${LangFileString} UnNotAdminLabel "Pre odinštaláciu FreeCAD potrebujete administrátorské práva!"
|
||||
${LangFileString} UnReallyRemoveLabel "Ste si istý, že chcete kompletne odinštalovať FreeCAD a všetky jeho súčiastky?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'FreeCADove užívateľské nastavenia'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Odinštaluje xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Odstráni konfiguračný adresár FreeCADu $\r$\n\
|
||||
$\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
pre všetkých užívateľov (keď máte administrátorské práva).'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Odinštaluj FreeCAD a všetky jeho súčiastky."
|
||||
70
tools/build/WindowsInstaller/lang/spanish.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Spanish
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Spanish"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Instalado para el actual usuario)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Este programa instalará FreeCAD en su ordenador.$\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Compilando guiones Python..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Crear acceso directo en el escritorio"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Visite freecad.org para últimas noticias, ayuda y consejos"
|
||||
|
||||
#${LangFileString} FileTypeTitle "Documento FreeCAD"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Instalar para todos los usuarios"
|
||||
${LangFileString} SecFileAssocTitle "Asociar ficheros"
|
||||
${LangFileString} SecDesktopTitle "Icono de escritorio"
|
||||
|
||||
${LangFileString} SecCoreDescription "Los ficheros de FreeCAD."
|
||||
#${LangFileString} SecAllUsersDescription "Instalar FreeCAD para todos los usuarios o sólo para el usuario actual."
|
||||
${LangFileString} SecFileAssocDescription "Asociar la extensión .FCStd con FreeCAD."
|
||||
${LangFileString} SecDesktopDescription "Crear un icono de FreeCAD en el escritorio."
|
||||
#${LangFileString} SecDictionaries "Diccionarios"
|
||||
#${LangFileString} SecDictionariesDescription "Diccionarios de revisión ortográfica que se pueden descargar e instalar."
|
||||
|
||||
#${LangFileString} PathName 'Ruta al fichero $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder 'Imposible encontrar $\"xxx.exe$\".'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'La descarga del diccionario para el idioma $\"$R3$\" ha fallado.'
|
||||
|
||||
#${LangFileString} ConfigInfo "La siguiente configuración de FreeCAD va a tardar un poco."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Error al intentar ejecutar el programa de configuración"
|
||||
${LangFileString} InstallRunning "El instalador ya está siendo ejecutado!"
|
||||
${LangFileString} AlreadyInstalled "¡FreeCAD ${APP_SERIES_KEY2} ya está instalado!$\r$\n\
|
||||
Se recomienda no instalar sobre una instalación existente$\r$\n\
|
||||
si la versión instalada es de prueba o da problemas.$\r$\n\
|
||||
En estos casos es mejor reinstalar FreeCAD.$\r$\n\
|
||||
Aún así, ¿quiere instalar FreeCAD sobre la versión existente?"
|
||||
${LangFileString} NewerInstalled "Está tratando de instalar una versión de FreeCAD más antigua que la que tiene instalada.$\r$\n\
|
||||
Si realmente lo desea, debe desinstalar antes la versión de FreeCAD instalada $OldVersionNumber."
|
||||
|
||||
#${LangFileString} FinishPageMessage "¡Enhorabuena! FreeCAD ha sido instalado con éxito.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (El primer arranque de FreeCAD puede tardar algunos segundos.)"
|
||||
${LangFileString} FinishPageRun "Ejecutar FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Imposible encontrar FreeCAD en el registro.$\r$\n\
|
||||
Los accesos rápidos del escritorio y del Menú de Inicio no serán eliminados."
|
||||
${LangFileString} UnInstallRunning "Antes cierre FreeCAD!"
|
||||
${LangFileString} UnNotAdminLabel "Necesita privilegios de administrador para desinstalar FreeCAD!"
|
||||
${LangFileString} UnReallyRemoveLabel "¿Está seguro de que desea eliminar completamente FreeCAD y todos sus componentes?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'Preferencias de usuario de FreeCAD'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Desinstala xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Elimina las carpetas de configuración de FreeCAD$\r$\n\
|
||||
$\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
de todos los usuarios.'
|
||||
${LangFileString} DialogUnPreferences 'Eligió eliminar la configuración de usuario de FreeCAD.$\r$\n\
|
||||
Esto también eliminará todos los addons de FreeCAD instalados.$\r$\n\
|
||||
¿Está de acuerdo con esto?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Desinstala FreeCAD y todos sus componentes."
|
||||
70
tools/build/WindowsInstaller/lang/swedish.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Swedish
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Swedish"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Installerad för aktuell användare)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Denna guide tar dig igenom installationen av $(^NameDA), $\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Kompilerar Pythonskript..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Skapa skrivbordsgenväg"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Besök freecad.org för de senaste nyheterna, support och tips"
|
||||
|
||||
#${LangFileString} FileTypeTitle "FreeCAD-dokument"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Installera för alla användare?"
|
||||
${LangFileString} SecFileAssocTitle "Filassociationer"
|
||||
${LangFileString} SecDesktopTitle "Skrivbordsikon"
|
||||
|
||||
${LangFileString} SecCoreDescription "FreeCAD-filerna."
|
||||
#${LangFileString} SecAllUsersDescription "Installera FreeCAD för alla användare, eller enbart för den aktuella användaren."
|
||||
${LangFileString} SecFileAssocDescription "Filer med ändelsen .FCStd kommer att automatiskt öppnas i FreeCAD."
|
||||
${LangFileString} SecDesktopDescription "En FreeCAD-ikon på skrivbordet."
|
||||
#${LangFileString} SecDictionaries "Ordböcker"
|
||||
#${LangFileString} SecDictionariesDescription "Stavningskontrollens ordböcker som kan laddas ned och installeras."
|
||||
|
||||
#${LangFileString} PathName 'Sökväg till filen $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder 'Filen $\"xxx.exe$\" finns inte i den angivna sökvägen.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Nedladdning av ordbok för språk $\"$R3$\" misslyckades.'
|
||||
|
||||
#${LangFileString} ConfigInfo "Följande konfigurering av FreeCAD kommer att ta en stund."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Kunde inte köra konfigurationsskriptet"
|
||||
${LangFileString} InstallRunning "Installationsprogrammet körs redan!"
|
||||
${LangFileString} AlreadyInstalled "FreeCAD ${APP_SERIES_KEY2} är redan installerad!$\r$\n\
|
||||
Att installera över en nuvarande installation är inte rekommenderat om den installerade$\r$\n\
|
||||
versionen är en testutgåva eller om du har problem med din nuvarande FreeCAD-installation.$\r$\n\
|
||||
I dessa fall är det bättre att ominstallera FreeCAD.$\r$\n\
|
||||
Vill du ändå installera FreeCAD över den nuvarande versionen?"
|
||||
${LangFileString} NewerInstalled "Du försöker att installera en äldre version av FreeCAD än vad du har installerad.$\r$\n\
|
||||
Om du verkligen vill detta måste du avinstallera den befintliga FreeCAD $OldVersionNumber innan."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Gratulerar! FreeCAD har installerats framgångsrikt.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (Den första starten av FreeCAD kan ta en stund.)"
|
||||
${LangFileString} FinishPageRun "Kör FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Kan inte hitta FreeCAD i registret.$\r$\n\
|
||||
Genvägar på skrivbordet och i startmenyn kommer inte att tas bort."
|
||||
${LangFileString} UnInstallRunning "Du måste stänga FreeCAD först!"
|
||||
${LangFileString} UnNotAdminLabel "Du måste ha administratörsbehörighet för att avinstallera FreeCAD!"
|
||||
${LangFileString} UnReallyRemoveLabel "Är du säker på att du verkligen vill fullständigt ta bort FreeCAD och alla dess komponenter?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'FreeCAD-användarinställningar'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Avinstallerar xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Raderar FreeCAD-konfiguration$\r$\n\
|
||||
(katalog $\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
för dig eller för alla användare (om du är admin).'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Avinstallera FreeCAD och alla dess komponenter."
|
||||
70
tools/build/WindowsInstaller/lang/turkish.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Turkish
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Turkish"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Installed for Current User)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "Bu sihirbaz size FreeCAD programını kuracak.$\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Compiling Python scripts..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Create desktop shortcut"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Visit freecad.org for the latest news, support and tips"
|
||||
|
||||
#${LangFileString} FileTypeTitle "FreeCAD-Document"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Tüm kullanıcılar için kur?"
|
||||
${LangFileString} SecFileAssocTitle "Dosya eşleşmeleri"
|
||||
${LangFileString} SecDesktopTitle "Masaüstü ikonu"
|
||||
|
||||
${LangFileString} SecCoreDescription "FreeCAD dosyaları."
|
||||
#${LangFileString} SecAllUsersDescription "FreeCAD tüm kullanıcılar için mi yoksa yalnızca bu kullanıcıya mı kurulacak."
|
||||
${LangFileString} SecFileAssocDescription "Uzantısı .FCStd olan dosyalar otomatik olarak FreeCAD ile açılsın."
|
||||
${LangFileString} SecDesktopDescription "Masaüstüne bir FreeCAD ikonu koy."
|
||||
#${LangFileString} SecDictionaries "Sözlükleri"
|
||||
#${LangFileString} SecDictionariesDescription "Spell-checker dictionaries that can be downloaded and installed."
|
||||
|
||||
#${LangFileString} PathName 'Path to the file $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder '$\"xxx.exe$\" dosyası belirttiğiniz dizinde bulunamadı.'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Download of dictionary for language $\"$R3$\" failed.'
|
||||
|
||||
#${LangFileString} ConfigInfo "Sıradaki FreeCAD yapılandırması biraz zaman alacak."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Yapılandırma programı çalıştırılamadı"
|
||||
${LangFileString} InstallRunning "Kurulum programı zaten çalışıyor!"
|
||||
${LangFileString} AlreadyInstalled "FreeCAD ${APP_SERIES_KEY2} kurulu zaten!$\r$\n\
|
||||
Installing over existing installations is not recommended if the installed version$\r$\n\
|
||||
is a test release or if you have problems with your existing FreeCAD installation.$\r$\n\
|
||||
In these cases better reinstall FreeCAD.$\r$\n\
|
||||
Dou you nevertheles want to install FreeCAD over the existing version?"
|
||||
${LangFileString} NewerInstalled "You are trying to install an older version of FreeCAD than what you have installed.$\r$\n\
|
||||
If you really want this, you must uninstall the existing FreeCAD $OldVersionNumber before."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Tebrikler! FreeCAD başarıyla kuruldu.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (FreeCAD in ilk açılışı birkaç saniye alabilir.)"
|
||||
${LangFileString} FinishPageRun "FreeCAD Başlat"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Sistem kütüğünde FreeCAD bulunamadı.$\r$\n\
|
||||
Başlat menüsü ve masaüstünüzdeki kısayollar silinemeyecek."
|
||||
${LangFileString} UnInstallRunning "Önce FreeCAD i kapatmalısınız!"
|
||||
${LangFileString} UnNotAdminLabel "FreeCAD kaldırabilmek için yönetici yetkileri gerekiyor!"
|
||||
${LangFileString} UnReallyRemoveLabel "FreeCAD ve tüm bileşenlerini kaldırmak istediğinize emin misiniz?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'FreeCAD$\'s user preferences'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Uninstalls xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Deletes FreeCAD$\'s configuration folder$\r$\n\
|
||||
$\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
for all users.'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Uninstall FreeCAD and all of its components."
|
||||
70
tools/build/WindowsInstaller/lang/ukrainian.nsh
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
FreeCAD Installer Language File
|
||||
Language: Ukrainian
|
||||
*/
|
||||
|
||||
!insertmacro LANGFILE_EXT "Ukrainian"
|
||||
|
||||
${LangFileString} TEXT_INSTALL_CURRENTUSER "(Встановлено для поточного користувача)"
|
||||
|
||||
${LangFileString} TEXT_WELCOME "За допомогою цього майстра ви зможете встановити FreeCAD у вашу систему.$\r$\n\
|
||||
$\r$\n\
|
||||
$_CLICK"
|
||||
|
||||
#${LangFileString} TEXT_CONFIGURE_PYTHON "Обробка скриптів Python..."
|
||||
|
||||
${LangFileString} TEXT_FINISH_DESKTOP "Створити значок на стільниці"
|
||||
${LangFileString} TEXT_FINISH_WEBSITE "Відвідати freecad.org, щоб ознайомитися з новинами, довідковими матеріалами та підказками"
|
||||
|
||||
#${LangFileString} FileTypeTitle "Документ FreeCAD"
|
||||
|
||||
#${LangFileString} SecAllUsersTitle "Встановити для всіх користувачів?"
|
||||
${LangFileString} SecFileAssocTitle "Прив’язка файлів"
|
||||
${LangFileString} SecDesktopTitle "Піктограма стільниці"
|
||||
|
||||
${LangFileString} SecCoreDescription "Файли FreeCAD."
|
||||
#${LangFileString} SecAllUsersDescription "Визначає, чи слід встановити FreeCAD для всіх користувачів, чи лише для поточного користувача."
|
||||
${LangFileString} SecFileAssocDescription "Файли з суфіксом .FCStd автоматично відкриватимуться за допомогою FreeCAD."
|
||||
${LangFileString} SecDesktopDescription "Піктограма FreeCAD на стільниці."
|
||||
#${LangFileString} SecDictionaries "Словники"
|
||||
#${LangFileString} SecDictionariesDescription "Словники для перевірки правопису, які можна отримати і встановити."
|
||||
|
||||
#${LangFileString} PathName 'Розташування файла $\"xxx.exe$\"'
|
||||
#${LangFileString} InvalidFolder 'У вказаній теці немає файла $\"xxx.exe$\".'
|
||||
|
||||
#${LangFileString} DictionariesFailed 'Спроба отримання словника для мови $\"$R3$\" зазнала невдачі.'
|
||||
|
||||
#${LangFileString} ConfigInfo "Налаштування FreeCAD може тривати досить довго."
|
||||
|
||||
#${LangFileString} RunConfigureFailed "Не вдалося виконати скрипт налаштування"
|
||||
${LangFileString} InstallRunning "Засіб для встановлення вже працює!"
|
||||
${LangFileString} AlreadyInstalled "FreeCAD ${APP_SERIES_KEY2} вже встановлено!$\r$\n\
|
||||
Встановлення нової версії на місце вже встановлених не рекомендоване, якщо$\r$\n\
|
||||
встановлено тестову версію або у вас виникають проблеми із уже встановленим FreeCAD.$\r$\n\
|
||||
У таких випадках краще перевстановити FreeCAD.$\r$\n\
|
||||
Чи хочете ви попри ці зауваження встановити FreeCAD на місце наявної версії?"
|
||||
${LangFileString} NewerInstalled "Ви намагаєтеся встановити версію FreeCAD, яка є застарілою порівняно з вже встановленою.$\r$\n\
|
||||
Якщо ви хочете встановити застарілу версію, вам слід спочатку вилучити вже встановлений FreeCAD $OldVersionNumber."
|
||||
|
||||
#${LangFileString} FinishPageMessage "Вітаємо! FreeCAD було успішно встановлено.$\r$\n\
|
||||
# $\r$\n\
|
||||
# (Перший запуск FreeCAD може тривати декілька секунд.)"
|
||||
${LangFileString} FinishPageRun "Запустити FreeCAD"
|
||||
|
||||
${LangFileString} UnNotInRegistryLabel "Не вдалося знайти записи FreeCAD у регістрі.$\r$\n\
|
||||
Записи на стільниці і у меню запуску вилучено не буде."
|
||||
${LangFileString} UnInstallRunning "Спочатку слід завершити роботу програми FreeCAD!"
|
||||
${LangFileString} UnNotAdminLabel "Для вилучення FreeCAD вам слід мати привілеї адміністратора!"
|
||||
${LangFileString} UnReallyRemoveLabel "Ви справді бажаєте повністю вилучити FreeCAD і всі його компоненти?"
|
||||
${LangFileString} UnFreeCADPreferencesTitle 'Параметри FreeCAD, встановлені користувачем'
|
||||
|
||||
#${LangFileString} SecUnProgDescription "Вилучає xxx."
|
||||
${LangFileString} SecUnPreferencesDescription 'Вилучає теку з налаштуваннями FreeCAD$\r$\n\
|
||||
$\"$AppPre\username\$\r$\n\
|
||||
$AppSuff\$\r$\n\
|
||||
${APP_DIR_USERDATA}$\")$\r$\n\
|
||||
для всіх користувачів.'
|
||||
${LangFileString} DialogUnPreferences 'You chose to delete the FreeCADs user configuration.$\r$\n\
|
||||
This will also delete all installed FreeCAD addons.$\r$\n\
|
||||
Do you agree with this?'
|
||||
${LangFileString} SecUnProgramFilesDescription "Вилучити FreeCAD і всі його компоненти."
|
||||
111
tools/build/WindowsInstaller/setup/configure.nsh
Normal file
@@ -0,0 +1,111 @@
|
||||
/*
|
||||
|
||||
configure.nsh
|
||||
|
||||
Write registry information and configure FreeCAD
|
||||
|
||||
*/
|
||||
|
||||
#!define SHORTCUT '${APP_NAME} ${APP_SERIES_NAME}.lnk" "$INSTDIR\${APP_RUN}" "" "$INSTDIR\${APP_RUN}" "" "" "" "${APP_SHORTCUT_INFO}"'
|
||||
|
||||
#--------------------------------
|
||||
# Registry information
|
||||
|
||||
Section -InstallData
|
||||
|
||||
# Registry information
|
||||
WriteRegStr SHCTX ${APP_REGKEY} "" $INSTDIR
|
||||
WriteRegStr SHCTX ${APP_REGKEY} "Version" "${APP_VERSION_NUMBER}"
|
||||
|
||||
# Start Menu shortcut
|
||||
SetOutPath "$INSTDIR\bin" # this is the folder in which the shortcut is executed
|
||||
# we must assure that the folder is not empty (happens on silent install and can accidentally happen)
|
||||
${if} $StartmenuFolder == ""
|
||||
StrCpy $StartmenuFolder "${APP_DIR}"
|
||||
${endif}
|
||||
CreateDirectory "$SMPROGRAMS\$StartmenuFolder"
|
||||
CreateShortCut "$SMPROGRAMS\$StartmenuFolder\${APP_NAME}.lnk" "$INSTDIR\${APP_RUN}" "" "$INSTDIR\${APP_RUN}" "" "" "" "${APP_SHORTCUT_INFO}"
|
||||
# Link to website and Wiki
|
||||
WriteINIStr "$SMPROGRAMS\$StartmenuFolder\${APP_WEBPAGE_INFO}.url" "InternetShortcut" "URL" "${APP_WEBPAGE}"
|
||||
WriteINIStr "$SMPROGRAMS\$StartmenuFolder\${APP_WIKI_INFO}.url" "InternetShortcut" "URL" "${APP_WIKI}"
|
||||
# create desktop icon
|
||||
${if} $CreateDesktopIcon == "true"
|
||||
SetOutPath "$INSTDIR\bin"
|
||||
CreateShortCut "$DESKTOP\${APP_NAME} ${APP_SERIES_NAME}.lnk" "$INSTDIR\${APP_RUN}" "" "$INSTDIR\${APP_RUN}" "" "" "" "${APP_SHORTCUT_INFO}"
|
||||
${endif}
|
||||
|
||||
# Uninstaller information
|
||||
${If} $MultiUser.InstallMode == "CurrentUser"
|
||||
WriteRegStr SHCTX ${APP_UNINST_KEY} "DisplayName" "${APP_NAME} ${APP_VERSION} $(TEXT_INSTALL_CURRENTUSER)"
|
||||
${Else}
|
||||
WriteRegStr SHCTX ${APP_UNINST_KEY} "DisplayName" "${APP_NAME} ${APP_VERSION}"
|
||||
${EndIf}
|
||||
|
||||
WriteRegStr SHCTX ${APP_UNINST_KEY} "UninstallString" '"$INSTDIR\${SETUP_UNINSTALLER}"'
|
||||
WriteRegStr SHCTX ${APP_UNINST_KEY} "DisplayVersion" "${APP_VERSION}"
|
||||
WriteRegStr SHCTX ${APP_UNINST_KEY} "DisplayIcon" "$INSTDIR\${APP_RUN}"
|
||||
WriteRegStr SHCTX ${APP_UNINST_KEY} "URLUpdateInfo" "${APP_WEBPAGE}"
|
||||
WriteRegStr SHCTX ${APP_UNINST_KEY} "URLInfoAbout" "https://www.freecad.org/"
|
||||
WriteRegStr SHCTX ${APP_UNINST_KEY} "Publisher" "${APP_NAME} Team"
|
||||
WriteRegStr SHCTX ${APP_UNINST_KEY} "HelpLink" "https://forum.freecad.org/"
|
||||
WriteRegDWORD SHCTX ${APP_UNINST_KEY} "NoModify" 0x00000001
|
||||
WriteRegDWORD SHCTX ${APP_UNINST_KEY} "NoRepair" 0x00000001
|
||||
WriteRegStr SHCTX ${APP_UNINST_KEY} "StartMenu" "$SMPROGRAMS\$StartmenuFolder"
|
||||
|
||||
# if we install over an older existing version, remove the old uninstaller information
|
||||
# NSIS cannot handle numbers with leading zero, thus cut it off before comparing
|
||||
StrCpy $1 $OldVersionNumber "" 1
|
||||
StrCpy $2 ${APP_SERIES_KEY} "" 1
|
||||
${if} $1 < $2
|
||||
DeleteRegKey SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APP_NAME}$OldVersionNumber"
|
||||
DeleteRegKey SHCTX "SOFTWARE\${APP_NAME}$OldVersionNumber"
|
||||
# also delete in the case of an emergency release
|
||||
DeleteRegKey SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APP_NAME}$OldVersionNumber1"
|
||||
DeleteRegKey SHCTX "SOFTWARE\${APP_NAME}$OldVersionNumber1"
|
||||
${endif}
|
||||
|
||||
SectionEnd
|
||||
|
||||
#--------------------------------
|
||||
# Write FreeCAD file associations
|
||||
|
||||
Section -Configure
|
||||
|
||||
# Associate .FCStd files with FreeCAD for current user or all users
|
||||
|
||||
${if} $CreateFileAssociations == "true"
|
||||
WriteRegStr SHCTX "${APP_DIR_REGKEY}" "" "$INSTDIR\${APP_RUN}"
|
||||
WriteRegStr SHCTX "Software\Classes\${APP_REGNAME_DOC}" "" "${APP_NAME} Document"
|
||||
WriteRegStr SHCTX "Software\Classes\${APP_REGNAME_DOC}\DefaultIcon" "" "$INSTDIR\${APP_RUN},0"
|
||||
WriteRegStr SHCTX "Software\Classes\${APP_REGNAME_DOC}\Shell\open\command" "" '"$INSTDIR\${APP_RUN}" "%1"'
|
||||
# we need to update also the automatically created entry about the FreeCAD.exe
|
||||
# otherwise .FCStd-files will could be opened with an older FreeCAD version
|
||||
ReadRegStr $0 SHCTX "Software\Classes\Applications\${BIN_FREECAD}\shell\open\command" ""
|
||||
${if} $0 != "" # if something was found
|
||||
WriteRegStr SHCTX "Software\Classes\Applications\${BIN_FREECAD}\shell\open\command" "" '"$INSTDIR\${APP_RUN}" "%1"'
|
||||
${endif}
|
||||
# .FCStd
|
||||
WriteRegStr SHCTX "Software\Classes\${APP_EXT}" "" "${APP_REGNAME_DOC}"
|
||||
WriteRegStr SHCTX "Software\Classes\${APP_EXT}" "Content Type" "${APP_MIME_TYPE}"
|
||||
# if the user is admin, also install the DLL toe preview .FCStd files
|
||||
${if} $MultiUser.Privileges == "Admin"
|
||||
# see https://nsis.sourceforge.io/Docs/AppendixB.html#library_install for a description of InstallLib
|
||||
!insertmacro InstallLib REGDLL NOTSHARED NOREBOOT_NOTPROTECTED ${FILES_THUMBS}\FCStdThumbnail.dll $SYSDIR\FCStdThumbnail.dll $SYSDIR
|
||||
${endif}
|
||||
# in any case remove the FCStdThumbnail.dll
|
||||
RMDir /r "$INSTDIR\thumbnail"
|
||||
|
||||
# Eventually refresh shell icons
|
||||
${RefreshShellIcons}
|
||||
${endif}
|
||||
|
||||
SectionEnd
|
||||
|
||||
#--------------------------------
|
||||
#
|
||||
|
||||
Function StartFreeCAD
|
||||
|
||||
Exec "$INSTDIR\${APP_RUN}"
|
||||
|
||||
FunctionEnd
|
||||
65
tools/build/WindowsInstaller/setup/install.nsh
Normal file
@@ -0,0 +1,65 @@
|
||||
/*
|
||||
|
||||
install.nsh
|
||||
|
||||
Installation of program files, dictionaries and external components
|
||||
|
||||
*/
|
||||
|
||||
#--------------------------------
|
||||
# Program files
|
||||
|
||||
Section -ProgramFiles SecProgramFiles
|
||||
|
||||
# if the $INSTDIR does not contain "FreeCAD" we must add a subfolder to avoid that FreeCAD will e.g.
|
||||
# be installed directly to C:\programs - the uninstaller will then delete the whole
|
||||
# C:\programs directory
|
||||
StrCpy $String $INSTDIR
|
||||
StrCpy $Search ${APP_NAME}
|
||||
Call StrPoint # function from Utils.nsh
|
||||
${if} $Pointer == "-1"
|
||||
StrCpy $INSTDIR "$INSTDIR\${APP_DIR}"
|
||||
${endif}
|
||||
|
||||
# turn on logging
|
||||
# Note that this can first be done here since the log file is written to $INSTDIR
|
||||
# to $INSTDIR must have a valid path before logging can be turned on
|
||||
LogSet on
|
||||
|
||||
# Install and register the core FreeCAD files
|
||||
|
||||
# Initializes the plug-ins dir ($PLUGINSDIR) if not already initialized.
|
||||
# $PLUGINSDIR is automatically deleted when the installer exits.
|
||||
InitPluginsDir
|
||||
|
||||
# Binaries
|
||||
SetOutPath "$INSTDIR\bin"
|
||||
# recursively copy all files under bin
|
||||
File /r "${FILES_FREECAD}\bin\*.*"
|
||||
|
||||
# MSVC redistributable DLLs
|
||||
SetOutPath "$INSTDIR\bin"
|
||||
File "${FILES_DEPS}\*.*"
|
||||
|
||||
# Others
|
||||
SetOutPath "$INSTDIR\data"
|
||||
File /r "${FILES_FREECAD}\data\*.*"
|
||||
SetOutPath "$INSTDIR\doc"
|
||||
File /r "${FILES_FREECAD}\doc\*.*"
|
||||
SetOutPath "$INSTDIR\Ext"
|
||||
File /r "${FILES_FREECAD}\Ext\*.*"
|
||||
SetOutPath "$INSTDIR\lib"
|
||||
File /r "${FILES_FREECAD}\lib\*.*"
|
||||
SetOutPath "$INSTDIR\Mod"
|
||||
File /r "${FILES_FREECAD}\Mod\*.*"
|
||||
SetOutPath "$INSTDIR\resources"
|
||||
File /r "${FILES_FREECAD}\resources\*.*"
|
||||
SetOutPath "$INSTDIR\translations"
|
||||
File /r "${FILES_FREECAD}\translations\*.*"
|
||||
SetOutPath "$INSTDIR"
|
||||
File /r "${FILES_THUMBS}"
|
||||
|
||||
# Create uninstaller
|
||||
WriteUninstaller "$INSTDIR\${SETUP_UNINSTALLER}"
|
||||
|
||||
SectionEnd
|
||||
99
tools/build/WindowsInstaller/setup/uninstall.nsh
Normal file
@@ -0,0 +1,99 @@
|
||||
/*
|
||||
|
||||
uninstall.nsh
|
||||
|
||||
Uninstall
|
||||
|
||||
*/
|
||||
|
||||
Var FileAssociation
|
||||
|
||||
# ----------------------------------
|
||||
|
||||
Section "un.FreeCAD" un.SecUnProgramFiles
|
||||
|
||||
SectionIn RO
|
||||
|
||||
# delete start menu folder
|
||||
ReadRegStr $0 SHCTX "${APP_UNINST_KEY}" "StartMenu"
|
||||
RMDir /r "$0"
|
||||
# delete desktop icon
|
||||
Delete "$DESKTOP\${APP_NAME} ${APP_SERIES_NAME}.lnk"
|
||||
|
||||
# remove file extension .FCStd
|
||||
ReadRegStr $R0 SHCTX "Software\Classes\${APP_EXT}" ""
|
||||
${if} $R0 == "${APP_REGNAME_DOC}"
|
||||
DeleteRegKey SHCTX "Software\Classes\${APP_EXT}"
|
||||
${endif}
|
||||
DeleteRegKey SHCTX "Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\${APP_EXT}"
|
||||
|
||||
# remove further FC-specific file extension
|
||||
DeleteRegKey SHCTX "Software\Classes\${APP_EXT1}" # .FCStd1
|
||||
DeleteRegKey SHCTX "Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\${APP_EXT1}"
|
||||
DeleteRegKey SHCTX "Software\Classes\${APP_EXT_BAK}" # .FCBak
|
||||
DeleteRegKey SHCTX "Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\${APP_EXT_BAK}"
|
||||
DeleteRegKey SHCTX "Software\Classes\${APP_EXT_MACRO}" # .FCMacro
|
||||
DeleteRegKey SHCTX "Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\${APP_EXT_MACRO}"
|
||||
DeleteRegKey SHCTX "Software\Classes\${APP_EXT_MAT}" # .FCMat
|
||||
DeleteRegKey SHCTX "Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\${APP_EXT_MAT}"
|
||||
DeleteRegKey SHCTX "Software\Classes\${APP_EXT_SCRIPT}" # .FCScript
|
||||
DeleteRegKey SHCTX "Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\${APP_EXT_SCRIPT}"
|
||||
|
||||
${if} $MultiUser.Privileges == "Admin"
|
||||
DeleteRegKey HKCR "${APP_REGNAME_DOC}"
|
||||
# see https://nsis.sourceforge.io/Docs/AppendixB.html#library_install for a description of UnInstallLib
|
||||
!insertmacro UnInstallLib REGDLL NOTSHARED NOREBOOT_NOTPROTECTED $SYSDIR\FCStdThumbnail.dll
|
||||
${endif}
|
||||
|
||||
# Uninstaller itself
|
||||
Delete "$INSTDIR\${SETUP_UNINSTALLER}"
|
||||
|
||||
# Application folder
|
||||
SetOutPath "$TEMP"
|
||||
RMDir /r "$INSTDIR"
|
||||
|
||||
# Registry keys and values
|
||||
DeleteRegKey SHCTX "${APP_REGKEY_SETUP}"
|
||||
DeleteRegKey SHCTX "${APP_REGKEY}"
|
||||
DeleteRegKey SHCTX "${APP_UNINST_KEY}"
|
||||
DeleteRegKey HKCR "Applications\${BIN_FREECAD}"
|
||||
DeleteRegValue HKCR "${APP_NAME}.Document\Shell\open\command" ""
|
||||
DeleteRegValue HKCR "${APP_NAME}.Document\DefaultIcon" ""
|
||||
|
||||
# File associations
|
||||
ReadRegStr $FileAssociation SHELL_CONTEXT "Software\Classes\${APP_EXT}" ""
|
||||
|
||||
${If} $FileAssociation == "${APP_REGNAME_DOC}"
|
||||
DeleteRegKey SHELL_CONTEXT "Software\Classes\${APP_EXT}"
|
||||
${EndIf}
|
||||
|
||||
# clean other registry entry
|
||||
DeleteRegKey SHCTX "SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\${APP_NAME}.exe"
|
||||
|
||||
# Eventually refresh shell icons
|
||||
${RefreshShellIcons}
|
||||
|
||||
SectionEnd
|
||||
|
||||
#---------------------------------
|
||||
# user preferences
|
||||
Section /o "un.$(UnFreeCADPreferencesTitle)" un.SecUnPreferences
|
||||
|
||||
# issue a warning dialog
|
||||
MessageBox MB_YESNO|MB_DEFBUTTON2|MB_ICONEXCLAMATION $(DialogUnPreferences) /SD IDYES IDYES +2 # continue if yes
|
||||
Goto NotPreferences
|
||||
# remove FreeCAD's config files
|
||||
StrCpy $AppSubfolder ${APP_DIR_USERDATA}
|
||||
Call un.DelAppPathSub # function from Utils.nsh
|
||||
# remove the registry key that stores the main window parameters
|
||||
DeleteRegKey HKCU "SOFTWARE\${APP_NAME}"
|
||||
NotPreferences:
|
||||
|
||||
SectionEnd
|
||||
|
||||
#---------------------------------
|
||||
# Section descriptions
|
||||
!insertmacro MUI_UNFUNCTION_DESCRIPTION_BEGIN
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${un.SecUnPreferences} "$(SecUnPreferencesDescription)"
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${un.SecUnProgramFiles} "$(SecUnProgramFilesDescription)"
|
||||
!insertmacro MUI_UNFUNCTION_DESCRIPTION_END
|
||||