View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0003088 | OpenFOAM | Patch | public | 2018-10-14 12:47 | 2018-10-15 10:39 |
Reporter | wyldckat | Assigned To | henry | ||
Priority | low | Severity | minor | Reproducibility | sometimes |
Status | resolved | Resolution | fixed | ||
Summary | 0003088: Proposition for wmRefresh with Bash to not use aliases | ||||
Description | In the recent report 3086 (in the list of related issues below), there was an indication of 'wmRefresh' being used within a bash script and emitting an error because 'wmUnset' was not defined. This is because aliases are not allowed by default as commands within shell scripts. The train of thought for using 'wmRefresh' within a shell script is as follows: 1. The 'makeParaView' script tells the user to use 'wmRefresh', as does in the last paragraph on the official instructions: https://openfoam.org/download/source/third-party-software/ 2. 'wmRefresh' is a shell function in 'etc/config.sh/aliases', so it shouldn't be a problem to use it from a shell script. 3. Therefore, it makes sense to simply use 'wmRefresh' from within a script that tries to automate the compilation and installation of OpenFOAM, including ParaView. 4. The only downside at the moment is the error message we get if we do run 'wmRefresh' from within a script, namely we get this error message: [...]/OpenFOAM-6/etc/config.sh/aliases: line 85: wmUnset: command not found So with this in mind, please find in attachment the proposition to fix this: - 'proposition1.patch' - has the proposed modification, namely using the direct source call for 'unset' from within 'wmRefresh'. - 'aliases' - the file for replacing 'etc/config.sh/aliases' in OpenFOAM 6 and dev. | ||||
Tags | No tags attached. | ||||
|
aliases (3,405 bytes)
#----------------------------------*-sh-*-------------------------------------- # ========= | # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox # \\ / O peration | Website: https://openfoam.org # \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation # \\/ M anipulation | #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM. # # OpenFOAM is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # OpenFOAM 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 General Public License # for more details. # # You should have received a copy of the GNU General Public License # along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. # # File # etc/config.sh/aliases # # Description # Aliases for working with OpenFOAM # Sourced from OpenFOAM-<VERSION>/etc/bashrc and/or ~/.bashrc # #------------------------------------------------------------------------------ # Change compiled version aliases # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ alias wmSet='. $WM_PROJECT_DIR/etc/bashrc' alias wm64='wmSet WM_ARCH_OPTION=64' alias wm32='wmSet WM_ARCH_OPTION=32' alias wmSP='wmSet WM_PRECISION_OPTION=SP' alias wmDP='wmSet WM_PRECISION_OPTION=DP' alias wmLP='wmSet WM_PRECISION_OPTION=LP' # Clear env alias wmUnset='. $WM_PROJECT_DIR/etc/config.sh/unset' # Toggle wmakeScheduler on/off # - also need to set WM_HOSTS # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ alias wmSchedOn='export WM_SCHEDULER=$WM_PROJECT_DIR/wmake/wmakeScheduler' alias wmSchedOff='unset WM_SCHEDULER' # Change directory aliases # ~~~~~~~~~~~~~~~~~~~~~~~~ alias foam='cd $WM_PROJECT_DIR' if [ -n "$WM_PROJECT_SITE" ] then alias foamSite='cd $WM_PROJECT_SITE' else alias foamSite='cd $WM_PROJECT_INST_DIR/site' fi alias src='cd $FOAM_SRC' alias lib='cd $FOAM_LIBBIN' alias app='cd $FOAM_APP' alias sol='cd $FOAM_SOLVERS' alias util='cd $FOAM_UTILITIES' alias tut='cd $FOAM_TUTORIALS' alias run='cd $FOAM_RUN' # Refresh the environment # ~~~~~~~~~~~~~~~~~~~~~~~ # For backward-compatibility unalias wmRefresh if it is defined as an alias if declare -f wmRefresh > /dev/null then unset wmRefresh else unalias wmRefresh 2> /dev/null fi wmRefresh() { wmProjectDir=$WM_PROJECT_DIR foamSettings=$FOAM_SETTINGS . $wmProjectDir/etc/config.sh/unset . $wmProjectDir/etc/bashrc $foamSettings } # Change OpenFOAM version # ~~~~~~~~~~~~~~~~~~~~~~~ unset foamVersion foamVersion() { if [ "$1" ]; then foamInstDir=$FOAM_INST_DIR wmUnset . $foamInstDir/OpenFOAM-$1/etc/bashrc foam echo "Changed to OpenFOAM-$1" 1>&2 else echo "OpenFOAM-$WM_PROJECT_VERSION" 1>&2 fi } # Change ParaView version # ~~~~~~~~~~~~~~~~~~~~~~~ unset foamPV foamPV() { . $WM_PROJECT_DIR/etc/config.sh/paraview ParaView_VERSION=$1 echo "paraview-$ParaView_VERSION (major: $ParaView_MAJOR)" 1>&2 } #------------------------------------------------------------------------------ proposition1.patch (350 bytes)
diff --git a/etc/config.sh/aliases b/etc/config.sh/aliases index 18fe5b2..974208f 100644 --- a/etc/config.sh/aliases +++ b/etc/config.sh/aliases @@ -82,7 +82,7 @@ wmRefresh() { wmProjectDir=$WM_PROJECT_DIR foamSettings=$FOAM_SETTINGS - wmUnset + . $wmProjectDir/etc/config.sh/unset . $wmProjectDir/etc/bashrc $foamSettings } |
|
Thanks Bruno Resolved in OpenFOAM-6 by commit 1cc13ef87a00e5232cc6761edc5cab25664a611b Resolved in OpenFOAM-dev by commit a0addf5e8f8a8a880c8af8839e67241ac296a043 |
Date Modified | Username | Field | Change |
---|---|---|---|
2018-10-14 12:47 | wyldckat | New Issue | |
2018-10-14 12:47 | wyldckat | Status | new => assigned |
2018-10-14 12:47 | wyldckat | Assigned To | => henry |
2018-10-14 12:47 | wyldckat | File Added: aliases | |
2018-10-14 12:47 | wyldckat | File Added: proposition1.patch | |
2018-10-14 12:48 | wyldckat | Relationship added | related to 0003086 |
2018-10-15 10:39 | henry | Status | assigned => resolved |
2018-10-15 10:39 | henry | Resolution | open => fixed |
2018-10-15 10:39 | henry | Fixed in Version | => 6 |
2018-10-15 10:39 | henry | Note Added: 0010105 |