SlideShare une entreprise Scribd logo
1  sur  31
Télécharger pour lire hors ligne
Getting software

Joachim Jacob
8 and 15 November 2013

Figure:
http://worldofdtcmarketing.com/website-content-now-critical-for-search-engine-performance-pharma/health-information-online/
Software for Linux?






First thing after installing, and one of the most
common tasks: getting software to run.
Just like Linux, most software written for Linux is
open source and free (e.g. GNU software).
Depending on your chosen distribution, it is
easier/harder to install packages (=another name
for software).

http://www.makeuseof.com/pages/best-linux-software
Installing: use the software center
→ PREFERRED WAY to install
Software center (= 'app' or 'application' store) every
distribution as some kind of software manager : search
for software and click to install. The software is
automatically updated by the update manager.
Depending on the distro, a lot of bioinformatics
packages are available.

Example in Linux Mint
E.g Bowtie via software center
E.g Bowtie via software center
E.g Bowtie via software center
E.g Bowtie via software center
E.g Bowtie via software center
E.g Bowtie via software center
E.g Bowtie via software center
E.g Bowtie via software center
E.g Bowtie via software center
Software is fetched from repositories

On the internet, some URLs point to software repositories for
Linux distributions. You can plug in repo's in the software manager.
The repository hosts installation files for software. These are
typically .rpm (Red Hat alike) or .deb (Debian alike distro's) files.
Official repositories: secure, high-quality, malware-free !
https://help.ubuntu.com/community/Repositories/Ubuntu
http://en.wikipedia.org/wiki/Software_repository
Exercise: add the Debian Med repo
→ Exercise link

DebianMed is a repository containing a lot of
bioinformatics packages for Debian-alike distro's, such
as Debian, Ubuntu, Mint,...
Debian Med can be added as a special type of
repository: a Personal Package Archive (PPA). The link
to the repo starts with ppa://.
Downloading installation files
→ PREFERRED WAY number 2
Instead of searching with the Software Manager,
the installation files (.rpm or .deb) can be
downloaded from internet separately (e.g. when
they're not (yet) in a repository). The Software
Manager will install the software contained in
these files (usually double-clicking the install
file).
Note: no secure transfer and no confirmation of
the package, so be a bit more careful.
Unix philosophy: software interconnects
Software should do one specific task, avoiding
redundant code by reusing other software code. This
creates dependencies between packages. Below a
graphical representation of dependencies of a package.

Dependencies

Dependencies need to be co-installed with the software
if not present. .rpm/.deb files take care of this! (and hence
the software manager)
Dependency example

http://packages.debian.org/squeeze/altree
Exercise: example of installing a .deb file
→ Exercise link

http://packages.debian.org/squeeze/altree
Software center versus package manager
A package
manager allows
more fine-tuned
package installs and
more info (e.g. repo
info, libraries with
code to be shared
between programs)

A Software Manager
offers installation of
complete sets of packages
constituting one (often
GUI) tool. It has also a
user rating functionality.
Uninstalling software
If your software manager has installed software, you
can delete software from within the interface.
The software manager knows exactly where files have
been installed.
Software that is not packed

→ LESS PREFERRED way number 1
Software can be set available as a compressed file, which
contains source code. This source code needs to be
“compiled” first on your computer: this creates executable
machine code (a binary) that you can use. Papers often
distribute code in this form, (before eventually being
incorporated in a repository).



Usually, the source code comes as a .tar.gz or .tar.bz2 compressed file.



Compiling: a process that is carried out via the terminal (see later)
http://www.micans.org/mcl/ and http://sourceforge.net/projects/transpose/
Software that is not packed
Issues:
- You need to install the
dependencies yourself (best via
the software manager).
- Be organised: in which folder
will you put the software?
- After the software is compiled,
you need to make it available in
your system. (see later)
- It is not easy to delete the
software: you need to manually
remove the files everywhere you
have put them.
Summary: a lot of hassle!
Software that is not packed
→ LESS PREFERRED way number 2
Sometimes, software is compiled for you, and the
resulting binary file can be downloaded.
Attention: the binary that is build needs to match
your machine architecture (usually 64 bit).

A folder called
'bin' contains
executable
binary files (the
program files)
The binary file
Example: http://homepage.tudelft.nl/19j49/t-SNE.html clustering tool
How to run binaries?




Set the permissions to 'executable'. To run a
program this needs to be set (right-click →
properties)
If your program is designed to work in a graphical
environment, double-clicking the binary works.
A program is a binary file
●

●

Every program, also on your desktop, can be
started on the command line.
Some binaries, and most bioinformatics
programs can ONLY be run from the command
line (covered later in detail).
Why different methods of distributing?






Commercial software is usually binary only
(protection of the source code) – installation
instructions are provided by the vendor
Free (Open Source) Software is usually
distributed in source packages.
Packaging, the process of creating .rpm or .deb
files takes a lot of time, therefor often the source
code to compile for yourself is provided.
Scripts are human readable programs




Software exists that reads in text files containing
instructions, to be executed by the computer.
These text files are called scripts. They are not
binary files. But they are executable.
E.g. perl, python, R, bash

A script
which just
contains text,
and can be
interpreted
by perl
Scripts are human readable programs
Scripting languages are very popular in bioinformatics,
because of their relatively low barrier to get starting,
their platform independence, and quick and dirty
approach (in the case of Perl), and easy sharing: just
download the script and execute it (permissions: read
and execute).
Summary of this section










Software manager...
… taps software from different places,
called repositories.
You can add repositories by adding the
URL
Software is compiled and installed on your
machine, either by the manager, or
manually.
… or it consists of scripts, which are
interpreted by an interpreter real-time.
Keywords of this section
software center
package manager
Repositories / software sources
dependencies
RPM and deb files
compiling of source code
binaries
packaging
executable
scripts

Write in your own words what the terms mean
Exercise: Getting software

→ Adding software sources containing bioinformatics packages
→ Install software from a package file graphically.
→ Install the very good text editor Geany (PPA exercise)
→ Install the very good terminal Terminator (Software center)
→ Good bioinformatics packages: Ugene – interface to many
algorithms.
Installing software in Linux - Introduction to linux for bioinformatics.

Contenu connexe

En vedette

RNA-seq for DE analysis: extracting counts and QC - part 4
RNA-seq for DE analysis: extracting counts and QC - part 4RNA-seq for DE analysis: extracting counts and QC - part 4
RNA-seq for DE analysis: extracting counts and QC - part 4BITS
 
Text mining on the command line - Introduction to linux for bioinformatics
Text mining on the command line - Introduction to linux for bioinformaticsText mining on the command line - Introduction to linux for bioinformatics
Text mining on the command line - Introduction to linux for bioinformaticsBITS
 
Utilidad de la genómica en la salud humana
Utilidad de la genómica en la salud humanaUtilidad de la genómica en la salud humana
Utilidad de la genómica en la salud humanacursoNGS
 
Managing your data - Introduction to Linux for bioinformatics
Managing your data - Introduction to Linux for bioinformaticsManaging your data - Introduction to Linux for bioinformatics
Managing your data - Introduction to Linux for bioinformaticsBITS
 
RNA-seq: Mapping and quality control - part 3
RNA-seq: Mapping and quality control - part 3RNA-seq: Mapping and quality control - part 3
RNA-seq: Mapping and quality control - part 3BITS
 
Deep learning with Tensorflow in R
Deep learning with Tensorflow in RDeep learning with Tensorflow in R
Deep learning with Tensorflow in Rmikaelhuss
 
Differential expression in RNA-Seq
Differential expression in RNA-SeqDifferential expression in RNA-Seq
Differential expression in RNA-SeqcursoNGS
 
BITS - Genevestigator to easily access transcriptomics data
BITS - Genevestigator to easily access transcriptomics dataBITS - Genevestigator to easily access transcriptomics data
BITS - Genevestigator to easily access transcriptomics dataBITS
 
BITS - Comparative genomics: the Contra tool
BITS - Comparative genomics: the Contra toolBITS - Comparative genomics: the Contra tool
BITS - Comparative genomics: the Contra toolBITS
 
BITS - Comparative genomics on the genome level
BITS - Comparative genomics on the genome levelBITS - Comparative genomics on the genome level
BITS - Comparative genomics on the genome levelBITS
 
Productivity tips - Introduction to linux for bioinformatics
Productivity tips - Introduction to linux for bioinformaticsProductivity tips - Introduction to linux for bioinformatics
Productivity tips - Introduction to linux for bioinformaticsBITS
 
BITS - Protein inference from mass spectrometry data
BITS - Protein inference from mass spectrometry dataBITS - Protein inference from mass spectrometry data
BITS - Protein inference from mass spectrometry dataBITS
 
BITS - Comparative genomics: gene family analysis
BITS - Comparative genomics: gene family analysisBITS - Comparative genomics: gene family analysis
BITS - Comparative genomics: gene family analysisBITS
 
The structure of Linux - Introduction to Linux for bioinformatics
The structure of Linux - Introduction to Linux for bioinformaticsThe structure of Linux - Introduction to Linux for bioinformatics
The structure of Linux - Introduction to Linux for bioinformaticsBITS
 
RNA-seq quality control and pre-processing
RNA-seq quality control and pre-processingRNA-seq quality control and pre-processing
RNA-seq quality control and pre-processingmikaelhuss
 
RNA-seq for DE analysis: detecting differential expression - part 5
RNA-seq for DE analysis: detecting differential expression - part 5RNA-seq for DE analysis: detecting differential expression - part 5
RNA-seq for DE analysis: detecting differential expression - part 5BITS
 
RNA-seq: analysis of raw data and preprocessing - part 2
RNA-seq: analysis of raw data and preprocessing - part 2RNA-seq: analysis of raw data and preprocessing - part 2
RNA-seq: analysis of raw data and preprocessing - part 2BITS
 
RNA-seq differential expression analysis
RNA-seq differential expression analysisRNA-seq differential expression analysis
RNA-seq differential expression analysismikaelhuss
 
RNA-seq: general concept, goal and experimental design - part 1
RNA-seq: general concept, goal and experimental design - part 1RNA-seq: general concept, goal and experimental design - part 1
RNA-seq: general concept, goal and experimental design - part 1BITS
 

En vedette (19)

RNA-seq for DE analysis: extracting counts and QC - part 4
RNA-seq for DE analysis: extracting counts and QC - part 4RNA-seq for DE analysis: extracting counts and QC - part 4
RNA-seq for DE analysis: extracting counts and QC - part 4
 
Text mining on the command line - Introduction to linux for bioinformatics
Text mining on the command line - Introduction to linux for bioinformaticsText mining on the command line - Introduction to linux for bioinformatics
Text mining on the command line - Introduction to linux for bioinformatics
 
Utilidad de la genómica en la salud humana
Utilidad de la genómica en la salud humanaUtilidad de la genómica en la salud humana
Utilidad de la genómica en la salud humana
 
Managing your data - Introduction to Linux for bioinformatics
Managing your data - Introduction to Linux for bioinformaticsManaging your data - Introduction to Linux for bioinformatics
Managing your data - Introduction to Linux for bioinformatics
 
RNA-seq: Mapping and quality control - part 3
RNA-seq: Mapping and quality control - part 3RNA-seq: Mapping and quality control - part 3
RNA-seq: Mapping and quality control - part 3
 
Deep learning with Tensorflow in R
Deep learning with Tensorflow in RDeep learning with Tensorflow in R
Deep learning with Tensorflow in R
 
Differential expression in RNA-Seq
Differential expression in RNA-SeqDifferential expression in RNA-Seq
Differential expression in RNA-Seq
 
BITS - Genevestigator to easily access transcriptomics data
BITS - Genevestigator to easily access transcriptomics dataBITS - Genevestigator to easily access transcriptomics data
BITS - Genevestigator to easily access transcriptomics data
 
BITS - Comparative genomics: the Contra tool
BITS - Comparative genomics: the Contra toolBITS - Comparative genomics: the Contra tool
BITS - Comparative genomics: the Contra tool
 
BITS - Comparative genomics on the genome level
BITS - Comparative genomics on the genome levelBITS - Comparative genomics on the genome level
BITS - Comparative genomics on the genome level
 
Productivity tips - Introduction to linux for bioinformatics
Productivity tips - Introduction to linux for bioinformaticsProductivity tips - Introduction to linux for bioinformatics
Productivity tips - Introduction to linux for bioinformatics
 
BITS - Protein inference from mass spectrometry data
BITS - Protein inference from mass spectrometry dataBITS - Protein inference from mass spectrometry data
BITS - Protein inference from mass spectrometry data
 
BITS - Comparative genomics: gene family analysis
BITS - Comparative genomics: gene family analysisBITS - Comparative genomics: gene family analysis
BITS - Comparative genomics: gene family analysis
 
The structure of Linux - Introduction to Linux for bioinformatics
The structure of Linux - Introduction to Linux for bioinformaticsThe structure of Linux - Introduction to Linux for bioinformatics
The structure of Linux - Introduction to Linux for bioinformatics
 
RNA-seq quality control and pre-processing
RNA-seq quality control and pre-processingRNA-seq quality control and pre-processing
RNA-seq quality control and pre-processing
 
RNA-seq for DE analysis: detecting differential expression - part 5
RNA-seq for DE analysis: detecting differential expression - part 5RNA-seq for DE analysis: detecting differential expression - part 5
RNA-seq for DE analysis: detecting differential expression - part 5
 
RNA-seq: analysis of raw data and preprocessing - part 2
RNA-seq: analysis of raw data and preprocessing - part 2RNA-seq: analysis of raw data and preprocessing - part 2
RNA-seq: analysis of raw data and preprocessing - part 2
 
RNA-seq differential expression analysis
RNA-seq differential expression analysisRNA-seq differential expression analysis
RNA-seq differential expression analysis
 
RNA-seq: general concept, goal and experimental design - part 1
RNA-seq: general concept, goal and experimental design - part 1RNA-seq: general concept, goal and experimental design - part 1
RNA-seq: general concept, goal and experimental design - part 1
 

Plus de BITS

BITS - Overview of sequence databases for mass spectrometry data analysis
BITS - Overview of sequence databases for mass spectrometry data analysisBITS - Overview of sequence databases for mass spectrometry data analysis
BITS - Overview of sequence databases for mass spectrometry data analysisBITS
 
BITS - Introduction to proteomics
BITS - Introduction to proteomicsBITS - Introduction to proteomics
BITS - Introduction to proteomicsBITS
 
BITS - Introduction to Mass Spec data generation
BITS - Introduction to Mass Spec data generationBITS - Introduction to Mass Spec data generation
BITS - Introduction to Mass Spec data generationBITS
 
BITS training - UCSC Genome Browser - Part 2
BITS training - UCSC Genome Browser - Part 2BITS training - UCSC Genome Browser - Part 2
BITS training - UCSC Genome Browser - Part 2BITS
 
Marcs (bio)perl course
Marcs (bio)perl courseMarcs (bio)perl course
Marcs (bio)perl courseBITS
 
Basics statistics
Basics statistics Basics statistics
Basics statistics BITS
 
Cytoscape: Integrating biological networks
Cytoscape: Integrating biological networksCytoscape: Integrating biological networks
Cytoscape: Integrating biological networksBITS
 
Cytoscape: Gene coexppression and PPI networks
Cytoscape: Gene coexppression and PPI networksCytoscape: Gene coexppression and PPI networks
Cytoscape: Gene coexppression and PPI networksBITS
 
Genevestigator
GenevestigatorGenevestigator
GenevestigatorBITS
 
BITS: UCSC genome browser - Part 1
BITS: UCSC genome browser - Part 1BITS: UCSC genome browser - Part 1
BITS: UCSC genome browser - Part 1BITS
 
Vnti11 basics course
Vnti11 basics courseVnti11 basics course
Vnti11 basics courseBITS
 
Bits protein structure
Bits protein structureBits protein structure
Bits protein structureBITS
 

Plus de BITS (12)

BITS - Overview of sequence databases for mass spectrometry data analysis
BITS - Overview of sequence databases for mass spectrometry data analysisBITS - Overview of sequence databases for mass spectrometry data analysis
BITS - Overview of sequence databases for mass spectrometry data analysis
 
BITS - Introduction to proteomics
BITS - Introduction to proteomicsBITS - Introduction to proteomics
BITS - Introduction to proteomics
 
BITS - Introduction to Mass Spec data generation
BITS - Introduction to Mass Spec data generationBITS - Introduction to Mass Spec data generation
BITS - Introduction to Mass Spec data generation
 
BITS training - UCSC Genome Browser - Part 2
BITS training - UCSC Genome Browser - Part 2BITS training - UCSC Genome Browser - Part 2
BITS training - UCSC Genome Browser - Part 2
 
Marcs (bio)perl course
Marcs (bio)perl courseMarcs (bio)perl course
Marcs (bio)perl course
 
Basics statistics
Basics statistics Basics statistics
Basics statistics
 
Cytoscape: Integrating biological networks
Cytoscape: Integrating biological networksCytoscape: Integrating biological networks
Cytoscape: Integrating biological networks
 
Cytoscape: Gene coexppression and PPI networks
Cytoscape: Gene coexppression and PPI networksCytoscape: Gene coexppression and PPI networks
Cytoscape: Gene coexppression and PPI networks
 
Genevestigator
GenevestigatorGenevestigator
Genevestigator
 
BITS: UCSC genome browser - Part 1
BITS: UCSC genome browser - Part 1BITS: UCSC genome browser - Part 1
BITS: UCSC genome browser - Part 1
 
Vnti11 basics course
Vnti11 basics courseVnti11 basics course
Vnti11 basics course
 
Bits protein structure
Bits protein structureBits protein structure
Bits protein structure
 

Dernier

How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 

Dernier (20)

How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 

Installing software in Linux - Introduction to linux for bioinformatics.

  • 1. Getting software Joachim Jacob 8 and 15 November 2013 Figure: http://worldofdtcmarketing.com/website-content-now-critical-for-search-engine-performance-pharma/health-information-online/
  • 2. Software for Linux?    First thing after installing, and one of the most common tasks: getting software to run. Just like Linux, most software written for Linux is open source and free (e.g. GNU software). Depending on your chosen distribution, it is easier/harder to install packages (=another name for software). http://www.makeuseof.com/pages/best-linux-software
  • 3. Installing: use the software center → PREFERRED WAY to install Software center (= 'app' or 'application' store) every distribution as some kind of software manager : search for software and click to install. The software is automatically updated by the update manager. Depending on the distro, a lot of bioinformatics packages are available. Example in Linux Mint
  • 4. E.g Bowtie via software center
  • 5. E.g Bowtie via software center
  • 6. E.g Bowtie via software center E.g Bowtie via software center
  • 7. E.g Bowtie via software center
  • 8. E.g Bowtie via software center
  • 9. E.g Bowtie via software center
  • 10. E.g Bowtie via software center
  • 11. E.g Bowtie via software center
  • 12. Software is fetched from repositories On the internet, some URLs point to software repositories for Linux distributions. You can plug in repo's in the software manager. The repository hosts installation files for software. These are typically .rpm (Red Hat alike) or .deb (Debian alike distro's) files. Official repositories: secure, high-quality, malware-free ! https://help.ubuntu.com/community/Repositories/Ubuntu http://en.wikipedia.org/wiki/Software_repository
  • 13. Exercise: add the Debian Med repo → Exercise link DebianMed is a repository containing a lot of bioinformatics packages for Debian-alike distro's, such as Debian, Ubuntu, Mint,... Debian Med can be added as a special type of repository: a Personal Package Archive (PPA). The link to the repo starts with ppa://.
  • 14. Downloading installation files → PREFERRED WAY number 2 Instead of searching with the Software Manager, the installation files (.rpm or .deb) can be downloaded from internet separately (e.g. when they're not (yet) in a repository). The Software Manager will install the software contained in these files (usually double-clicking the install file). Note: no secure transfer and no confirmation of the package, so be a bit more careful.
  • 15. Unix philosophy: software interconnects Software should do one specific task, avoiding redundant code by reusing other software code. This creates dependencies between packages. Below a graphical representation of dependencies of a package. Dependencies Dependencies need to be co-installed with the software if not present. .rpm/.deb files take care of this! (and hence the software manager)
  • 17. Exercise: example of installing a .deb file → Exercise link http://packages.debian.org/squeeze/altree
  • 18. Software center versus package manager A package manager allows more fine-tuned package installs and more info (e.g. repo info, libraries with code to be shared between programs) A Software Manager offers installation of complete sets of packages constituting one (often GUI) tool. It has also a user rating functionality.
  • 19. Uninstalling software If your software manager has installed software, you can delete software from within the interface. The software manager knows exactly where files have been installed.
  • 20. Software that is not packed → LESS PREFERRED way number 1 Software can be set available as a compressed file, which contains source code. This source code needs to be “compiled” first on your computer: this creates executable machine code (a binary) that you can use. Papers often distribute code in this form, (before eventually being incorporated in a repository).  Usually, the source code comes as a .tar.gz or .tar.bz2 compressed file.  Compiling: a process that is carried out via the terminal (see later) http://www.micans.org/mcl/ and http://sourceforge.net/projects/transpose/
  • 21. Software that is not packed Issues: - You need to install the dependencies yourself (best via the software manager). - Be organised: in which folder will you put the software? - After the software is compiled, you need to make it available in your system. (see later) - It is not easy to delete the software: you need to manually remove the files everywhere you have put them. Summary: a lot of hassle!
  • 22. Software that is not packed → LESS PREFERRED way number 2 Sometimes, software is compiled for you, and the resulting binary file can be downloaded. Attention: the binary that is build needs to match your machine architecture (usually 64 bit). A folder called 'bin' contains executable binary files (the program files) The binary file Example: http://homepage.tudelft.nl/19j49/t-SNE.html clustering tool
  • 23. How to run binaries?   Set the permissions to 'executable'. To run a program this needs to be set (right-click → properties) If your program is designed to work in a graphical environment, double-clicking the binary works.
  • 24. A program is a binary file ● ● Every program, also on your desktop, can be started on the command line. Some binaries, and most bioinformatics programs can ONLY be run from the command line (covered later in detail).
  • 25. Why different methods of distributing?    Commercial software is usually binary only (protection of the source code) – installation instructions are provided by the vendor Free (Open Source) Software is usually distributed in source packages. Packaging, the process of creating .rpm or .deb files takes a lot of time, therefor often the source code to compile for yourself is provided.
  • 26. Scripts are human readable programs   Software exists that reads in text files containing instructions, to be executed by the computer. These text files are called scripts. They are not binary files. But they are executable. E.g. perl, python, R, bash A script which just contains text, and can be interpreted by perl
  • 27. Scripts are human readable programs Scripting languages are very popular in bioinformatics, because of their relatively low barrier to get starting, their platform independence, and quick and dirty approach (in the case of Perl), and easy sharing: just download the script and execute it (permissions: read and execute).
  • 28. Summary of this section      Software manager... … taps software from different places, called repositories. You can add repositories by adding the URL Software is compiled and installed on your machine, either by the manager, or manually. … or it consists of scripts, which are interpreted by an interpreter real-time.
  • 29. Keywords of this section software center package manager Repositories / software sources dependencies RPM and deb files compiling of source code binaries packaging executable scripts Write in your own words what the terms mean
  • 30. Exercise: Getting software → Adding software sources containing bioinformatics packages → Install software from a package file graphically. → Install the very good text editor Geany (PPA exercise) → Install the very good terminal Terminator (Software center) → Good bioinformatics packages: Ugene – interface to many algorithms.

Notes de l'éditeur

  1. Installation part - install Unetbootin - get an iso image - get on a USB key - run live the laptop you are working on - go back to system - open virtualbox - make a new virtualmachine, run live in vm and install linux.
  2. Show them transmission! (firefox is a bash script