Skip to content

Commit d4d0430

Browse files
committed
Added resources for scientific applications. Small updates of software chapter.
1 parent ba78d13 commit d4d0430

File tree

1 file changed

+35
-3
lines changed

1 file changed

+35
-3
lines changed

presentation/linux_bash_metacentrum_course.tex

Lines changed: 35 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4128,11 +4128,12 @@ \subsection{Packages}
41284128
\item RPM --- low level, any RPM-based distribution
41294129
\item GNOME software --- in most of distributions using GNOME
41304130
\item And many more\ldots
4131+
\item All do same task --- as soon as user master one, others are equally simple
41314132
\end{itemize}
41324133
\item Distributions use to provide convenient simple update applet notifying about awaiting updates
41334134
\item There use to be web services to look for packages, also from other sources --- \href{https://software.opensuse.org/explore}{openSUSE}, \href{https://www.debian.org/distrib/packages\#search_packages}{Debian}, \href{https://packages.ubuntu.com/}{Ubuntu} (+ \href{https://launchpad.net/ubuntu/+search}{Launchpad} and \href{https://launchpad.net/ubuntu/+ppas}{PPAs}), \href{https://packages.fedoraproject.org/}{Fedora},~\ldots
41344135
\item The task is always same, the exact work-flow and commands more or less differ among distributions\ldots
4135-
\item Tools like Android Google Play, Apple Store or Windows Store are inspired from Linux\ldots
4136+
\item Tools like Android Google Play, Apple Store or Windows Store are inspired from Linux (but terribly simplified)\ldots
41364137
\end{itemize}
41374138
\vfill
41384139
\begin{block}{Task}
@@ -4148,7 +4149,7 @@ \subsection{Packages}
41484149
\item \texttt{zypper rm \textit{package}} --- remove \textit{package}
41494150
\item \texttt{zypper ref} --- refresh repositories
41504151
\item \texttt{zypper up} --- update
4151-
\item \texttt{zypper dup} -- upgrade to newer release of whole distribution
4152+
\item \texttt{zypper dup} -- upgrade to newer release of whole distribution (see \href{https://en.opensuse.org/SDB:System_upgrade}{documentation})
41524153
\item \texttt{zypper ps -s} -- check which running applications (including SystemD services) should be restarted after update of packages
41534154
\item \texttt{zypper se \textit{term}} --- search \textit{term}
41544155
\item \texttt{zypper pa -{-}orphaned -{-}unneeded} --- list packages, which can be safely removed
@@ -4244,7 +4245,7 @@ \subsection{Compilation}
42444245
./configure # Many possible parameters, settings for compilation
42454246
# Not required every time
42464247
make # Basic building command, sometimes only this is required
4247-
make install # Final creation of binary, sometimes required
4248+
make install # Placing everything into correct placed, sometimes required
42484249
\end{bashcode}
42494250
\end{frame}
42504251
@@ -4380,6 +4381,37 @@ \subsection{Windows applications}
43804381
\end{flushright}
43814382
\end{frame}
43824383
4384+
\subsection{Scientific applications}
4385+
4386+
\begin{frame}[allowframebreaks]{Where to get scientific applications for Linux}
4387+
\begin{itemize}
4388+
\item There is no universal simple solution
4389+
\item As first step look if particular package is available for your distribution
4390+
\begin{itemize}
4391+
\item DebianScience \url{https://wiki.debian.org/DebianScience} --- same packages are available also for Ubuntu, Mint and all the DEB derivatives
4392+
\item openSUSE Science project \url{https://en.opensuse.org/Portal:Science}
4393+
\item Fedora scientific packages \url{https://fedoraproject.org/wiki/Scientific_Packages_List}
4394+
\item Major distributions have web services (e.g. \href{https://launchpad.net/}{Launchpad} for Ubuntu or \href{https://build.opensuse.org/}{openSUSE Build Service}) where users can create their own personal repositories and package their favorite packages (like \href{https://build.opensuse.org/project/show/home:vojtaeus}{myself}) --- search\ldots
4395+
\end{itemize}
4396+
\item There are projects creating repositories with custom management system providing (among others) plenty of scientific applications
4397+
\begin{itemize}
4398+
\item Probably most known is \href{https://conda.io/}{Conda}
4399+
\item \href{https://docs.brew.sh/Homebrew-on-Linux}{Homebrew on Linux} is derived from macOS Homebrew, works also on WSL
4400+
\end{itemize}
4401+
\item Authors sometimes provide on homepages RPM/DEB/precompiled Java binaries/\ldots{ }--- check them first
4402+
\item If there is no other option, download source code and compile yourselves\ldots
4403+
\begin{itemize}
4404+
\item Always check documentation for requirements and instructions
4405+
\item Solving issues requires experience, can be tricky, ask for help and don't give it up
4406+
\end{itemize}
4407+
\item Scientific programming languages like R, Python, Perl, Julia, Matlab etc. have their own system to install language-specific packages
4408+
\begin{itemize}
4409+
\item Distributions sometimes provide packages at least for part of the packages of such languages --- typically at least for Python, Perl or R --- this is especially convenient for packages having plenty of complex dependencies
4410+
\end{itemize}
4411+
\item Packages in various repositories are sometimes not up-to-date with newest version released --- if so, contact maintainer of distributional package and kindly ask for update (distributional webs use to have easy ways how to do it)
4412+
\end{itemize}
4413+
\end{frame}
4414+
43834415
\section{MetaCentrum}
43844416
43854417
\begin{frame}{MetaCentrum}

0 commit comments

Comments
 (0)