diff --git a/assets/images/icons/Step 1 quote.svg b/assets/images/icons/Step 1 quote.svg new file mode 100644 index 000000000..8f662a68d --- /dev/null +++ b/assets/images/icons/Step 1 quote.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/assets/images/icons/Step 2 quote.svg b/assets/images/icons/Step 2 quote.svg new file mode 100644 index 000000000..5bdfb6fcb --- /dev/null +++ b/assets/images/icons/Step 2 quote.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/assets/images/icons/Step 3 quote.svg b/assets/images/icons/Step 3 quote.svg new file mode 100644 index 000000000..a4f743aad --- /dev/null +++ b/assets/images/icons/Step 3 quote.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/assets/js/bioconductor.js b/assets/js/bioconductor.js index 6c14b9e81..92e52e826 100644 --- a/assets/js/bioconductor.js +++ b/assets/js/bioconductor.js @@ -58,6 +58,21 @@ document.addEventListener("DOMContentLoaded", function () { navLink.forEach((n) => n.addEventListener("click", closeMenu)); }); +//Changes body and hero background color once clicked on certain links +function changeBackgroundColors() { + const heroElement = document.querySelector(".hero"); + const targetPageRegex = /\/install\//; + + if (targetPageRegex.test(window.location.href)) { + document.body.style.backgroundColor = "#fff"; + heroElement.style.backgroundColor = "var(--neutral-n50)"; + } +} + +changeBackgroundColors(); + +window.addEventListener("hashchange", changeBackgroundColors); + function log(message) { if (fb_lite) { //console.log(message); diff --git a/assets/style/bioconductor.css b/assets/style/bioconductor.css index 7b8711774..64e22a7db 100644 --- a/assets/style/bioconductor.css +++ b/assets/style/bioconductor.css @@ -6,7 +6,6 @@ body { } main { - background: var(--neutral-n50); margin: 1rem 0; overflow: hidden; } diff --git a/assets/style/colors.css b/assets/style/colors.css index 98eac1efe..4b694347f 100644 --- a/assets/style/colors.css +++ b/assets/style/colors.css @@ -56,6 +56,7 @@ --misc-annotations: #ff8a00; --misc-error: #a92626; --misc-dark: #070707; + --misc-purple: #a333f1; /* Gradients */ --gradient-warmcool: linear-gradient(to right, #ff2f4b, #4e5cff); diff --git a/assets/style/get-started.css b/assets/style/get-started.css new file mode 100644 index 000000000..cb7394c48 --- /dev/null +++ b/assets/style/get-started.css @@ -0,0 +1,119 @@ +.install-hero { + margin: 0 auto; + display: flex; + flex-direction: column; + align-items: flex-start; + padding-top: 0.5rem; +} + +.get-started-h1 { + color: var(--misc-dark) !important; +} + +.instructions-install { + flex: 1; + display: flex; + flex-direction: column; + align-items: flex-start; + padding-bottom: 2rem; +} + +.instructions-install p { + text-align: left; + margin: 0 0 1rem; +} + +.instructions-install a { + color: var(--misc-dark); +} + +/* stylelint-disable color-function-notation, alpha-value-notation */ +.warmcool-gradient { + background-image: var(--gradient-reversewarmcool); + border-radius: 0.5rem; + box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.06), 0 2px 5px 0 rgba(0, 0, 0, 0.06), + 0 10px 10px 0 rgba(0, 0, 0, 0.05), 0 22px 13px 0 rgba(0, 0, 0, 0.03), + 0 39px 16px 0 rgba(0, 0, 0, 0.01), 0 61px 17px 0 rgba(0, 0, 0, 0); +} + +.install-row { + border-radius: 0.5rem; + display: flex; + flex-direction: row; + margin: 1px; + gap: 3rem; +} + +.install-content { + background: #fff; + display: flex; + flex-direction: column; + flex: 1; + padding: 0.9rem 1.5rem; + border-radius: 0.5rem; +} + +.install-blockquote { + border-left: 2px solid var(--misc-purple); + background-color: transparent; + display: flex; + align-items: flex-start; + justify-content: space-around; + padding: 0; + padding-left: 10px; + gap: 10px; +} + +.install-section { + margin-top: 1.5rem; + margin-bottom: 1.5rem; +} + +.install-section a { + color: black; +} + +.code-install { + margin-top: 1.6rem; + width: 100%; + box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.06), 0 2px 5px 0 rgba(0, 0, 0, 0.06), + 0 10px 10px 0 rgba(0, 0, 0, 0.05), 0 22px 13px 0 rgba(0, 0, 0, 0.03), + 0 39px 16px 0 rgba(0, 0, 0, 0.01), 0 61px 17px 0 rgba(0, 0, 0, 0); +} + +/* stylelint-enable color-function-notation, alpha-value-notation */ + +.code-install code { + font-size: 1.25rem; + text-align: start; +} + +.step-1 { + padding-bottom: 0.5rem; +} + +.step-3 { + align-self: end; +} + +@media (width <= 678px) { + .instructions-install img { + display: none; + } + + .instructions-install { + padding-bottom: 0; + } + + .install-row { + flex-direction: column; + + /* stylelint-disable-next-line value-no-vendor-prefix */ + width: -webkit-fill-available; + gap: 1.5rem; + } + + .code-install { + margin-top: 0; + } +} diff --git a/assets/style/hero.css b/assets/style/hero.css index ea823bf1d..0928bb72a 100644 --- a/assets/style/hero.css +++ b/assets/style/hero.css @@ -16,6 +16,7 @@ } /* disabled here due to a linting error, but we need the webkit marker for this to work */ + /* stylelint-disable */ .hero mark { background: var(--gradient-brandreverse); diff --git a/content/install.md b/content/install-old.md similarity index 100% rename from content/install.md rename to content/install-old.md diff --git a/content/install.html b/content/install.html new file mode 100644 index 000000000..ad35fcb00 --- /dev/null +++ b/content/install.html @@ -0,0 +1,357 @@ +
+

Install Bioconductor Packages

+

To install core packages, type the following in an R command window:

+ +
+
+if (!require("BiocManager", quietly = TRUE))
+  install.packages("BiocManager")
+BiocManager::install(version = "3.17")
+
+
+ +

To install core packages, type the following in an R command window:

+ +
+
+BiocManager::install(c("GenomicFeatures", "AnnotationDbi"))
+
+
+ +

+ The install() function (in the BiocManager package) has + arguments that change its default behavior; type ?install for further help. +

+

+ For a more detailed explanation on using BiocManager and its advanced usage, + such as version switching, please refer to the + BiocManager vignette. +

+ +

Find Bioconductor Packages

+ +

Visit the software package list to discover available packages.

+

+ To search through available packages programmatically, use the following: +

+ +
+
+BiocManager::available()
+
+
+ +

+ For example, using a “^org” search pattern will show all of the available + organism annotation packages. +

+ +

+ Update Installed Bioconductor Packages +

+ +

+ Bioconductor packages, especially those in the development branch, are + updated fairly regularly. To identify packages requiring update within your + version of Bioconductor, start a new session of R and enter: +

+ +
+
+BiocManager::install()
+
+
+ +

+ Use the argument ask=FALSE to update old packages without + being prompted. Read the help page for ?install for additional details. +

+ +
Updgrading Installed Bioconductor Packages
+ +

+ Due to the development cycle, all versions of R will eventually support more + than one version of Bioconductor. To use the latest version of Bioconductor + for your version of R, enter: +

+ +
+
+if (!require("BiocManager", quietly = TRUE))
+    install.packages("BiocManager")
+BiocManager::install()
+
+
+ +

+ Remember that more recent versions of Bioconductor may be available if your + version of R is out-of-date. BiocManager will notify you when your version + of R is out-of-date. +

+ +

+ For more details on Bioconductor approaches to versioning, see the + advanced section + in the vignette and version numbering in the + developer reference + section. +

+ +
Recompiling Installed Bioconductor Packages
+ +

+ Rarely, underlying changes in the operating system require ALL installed + packages to be recompiled for source (C or Fortran) compatibility. One way + to address this might be to start a new R session and enter: +

+ +
+
+if (!require("BiocManager", quietly = TRUE))
+    install.packages("BiocManager")
+pkgs <- rownames(installed.packages())
+BiocManager::install(pkgs, type = "source", checkBuilt = TRUE)
+
+
+ +

+ As this will reinstall all currently installed packages, it likely involves + a significant amount of network bandwidth and compilation time. All packages + are implicitly updated, and the cumulative effect might introduce wrinkles + that disrupt your work flow. It also requires that you have the necessary + compilers installed. +

+ +

+ Troubleshoot Package Installations +

+ +

Use the commands:

+ +
+
+BiocManager::valid()     ## R version 3.5 or later
+
+
+ +

+ to flag packages that are either out-of-date or too new for your version of + Bioconductor. The output suggests ways to solve identified problems, and the + help page ?valid lists arguments influencing the behavior + of the function. +

+ +
Troubleshoot BiocManager
+ +

+ One likely reason for BiocManager not working on your system could be that + your version of R is too old for BiocManager. In order + avoid this issue, please ensure that you have the latest version of R + installed in your system. BiocManager supports R versions from 3.5.0 and + above. +

+ +

Why use BiocManager::install()?

+ +

+ BiocManager::install() is the recommended way to install + Bioconductor packages. There are several reasons for preferring this to the + ‘standard’ way in which R pacakges are installed via + install.packages(). +

+ +

+ Bioconductor has a repository and release schedule that differs from R + (Bioconductor has a ‘devel’ branch to which new packages and updates are + introduced, and a stable ‘release’ branch emitted once every 6 months to + which bug fixes but not new features are introduced). +

+ +

+ A consequence of the mismatch between R and Bioconductor release schedules + is that the Bioconductor version identified by + install.packages() is sometimes not the most recent + ‘release’ available. For instance, an R minor version may be introduced some + months before the next Bioc release. After the Bioc release the users of the + R minor version will be pointed to an out-of-date version of Bioconductor. +

+ +

+ A consequence of the distinct ‘devel’ branch is that + install.packages() + sometimes points only to the ‘release’ repository, whereas Bioconductor + developers and users wanting leading-edge features wish to access the + Bioconductor ‘devel’ repository. For instance, the Bioconductor 3.0 release + is available for R.3.1.x, so Bioconductor developers and leading-edge users + need to be able to install the devel version of Bioconductor packages into + the same version (though perhaps different instance or at least library + location) of R that supports version 2.14 of Bioconductor. +

+ +

+ An indirect consequence of Bioconductor’s structured release is that + packages generally have more extensive dependencies with one another, both + explicitly via the usual package mechanisms and implicitly because the + repository, release structure, and Bioconductor community interactions favor + re-use of data representations and analysis concepts across packages. There + is thus a higher premium on knowing that packages are from the same release, + and that all packages are current within the release. +

+ +

+ The BiocManager package serves as the primary way to ensure that the + appropriate Bioconductor installation is used with respect to the version of + R in use regardless of the R and Bioconductor release cycles. +

+ +
+
+> library(BiocManager)
+Bioconductor version 3.9 (BiocManager 1.30.4), ?BiocManager::install
+for help
+
+
+ +

+ The install() function is provided by BiocManager. This is + a wrapper around install.packages, but with the repository chosen according + to the version of Bioconductor in use, rather than to the version relevant + at the time of the release of R. +

+ +

+ install() also nudges users to remain current within a + release, by default checking for out-of-date packages and asking if the user + would like to update. +

+ +
+
+> BiocManager::install()
+Bioconductor version 3.9 (BiocManager 1.30.4), R 3.6.0 Patched
+(2019-05-02 r76454)
+Update old packages: 'BBmisc', 'genefilter', 'GenomicAlignments',
+  'GenomicRanges', 'IRanges', 'MASS', 'reshape2', 'Rgraphviz',
+  'RJSONIO', 'rtracklayer'
+Update all/some/none? [a/s/n]:
+
+
+ +

+ The BiocManager package provides facilities for switching to the ‘devel’ + version of Bioconductor. +

+ +
+
+> BiocManager::install(version = "devel")
+Upgrade 89 packages to Bioconductor version '3.10'? [y/n]: y
+Installing package(s) 'BiocVersion'
+trying URL 'https://bioconductor.org/packages/3.10/bioc/src/contrib/BiocVersion_3.10.0.tar.gz'
+Content type 'application/x-gzip' length 987 bytes
+==================================================
+downloaded 987 bytes
+
+* installing *source* package 'BiocVersion' ...
+** help
+*** installing help indices
+** building package indices
+** testing if installed package can be loaded
+* DONE (BiocVersion)
+
+...
+Bioconductor version 3.10 (BiocManager 1.30.4), ?BiocManager::install for
+help
+
+
+ +

+ (at some points in the R / Bioconductor release cycle use of ‘devel’ + requires use of a different version of R itself, in which case the attempt + to install devel fails with an appropriate message). +

+ +

+ The BiocManager package also provides valid() to test that + the installed packages are not a hodgepodge from different Bioconductor + releases (the ‘too new’ packages have been installed from source rather than + a repository; regular users would seldom have these). +

+ +
+
+> BiocManager::valid()
+
+* sessionInfo()
+
+R version 3.6.0 Patched (2019-05-02 r76454)
+Platform: x86_64-pc-linux-gnu (64-bit)
+...
+
+Bioconductor version '3.9'
+
+  * 2 packages out-of-date
+  * 0 package too new
+...
+create a valid installation with
+
+  BiocManager::install(c(
+    "GenomicFeatures", "AnnotationDbi"
+  ), update = TRUE, ask = FALSE)
+
+more details: BiocManager::valid()$too_new, BiocManager::valid()$out_of_date
+
+Warning message:
+2 packages out-of-date; 0 packages too new
+
+
+ +

+ For users who spend a lot of time in Bioconductor, the features outlined + above become increasingly important and install() is much + preferred to install.packages(). +

+ +

Pre-configured Bioconductor

+ +

+ Bioconductor is also available as + Docker images or available for use in the + AnVIL. +

+ +

Legacy and Older R Versions

+ +

+ is always recommended to update to the most current version of R and + Bioconductor. If this is not possible and R < 3.5.0 , + please use the following for installing Bioconductor packages. +

+ +

To install core packages, type the following in an R command window:

+ +
+
+source("https://bioconductor.org/biocLite.R")
+
+
+ +

+ Install specific packages, e.g., “GenomicFeatures” and “AnnotationDbi”, + with: +

+ +
+
+BiocInstaller::biocLite(c("GenomicFeatures", "AnnotationDbi"))
+
+
+
diff --git a/content/install.yaml b/content/install.yaml index 878314efa..0a82b71b8 100644 --- a/content/install.yaml +++ b/content/install.yaml @@ -1,5 +1,6 @@ --- title: Install +hero: components/install_hero subnav: - include: /_bioc_release_packages/ - include: /_documentation/ diff --git a/layouts/_sitehead.html b/layouts/_sitehead.html index bcf7d3e59..afaacac00 100644 --- a/layouts/_sitehead.html +++ b/layouts/_sitehead.html @@ -44,6 +44,7 @@ + diff --git a/layouts/components/install_hero.html b/layouts/components/install_hero.html new file mode 100644 index 000000000..45bf81b68 --- /dev/null +++ b/layouts/components/install_hero.html @@ -0,0 +1,92 @@ +
+

Get started

+
+
+

1. Install R

+

+ The current release of Bioconductor is version 3.17; it works with R + version 4.3.0. Users of older R and Bioconductor must update their + installation to take advantage of new features and to access packages + that have been added to Bioconductor since the last release. +

+

+ The development version of Bioconductor is version 3.18; it works with R + version 4.3.0. More recent ‘devel’ versions of R (if available) will be + supported during the next Bioconductor release cycle. +

+ blank_ +
+
+
+
+

1.

+

+ Download the most recent version of R. The R FAQs and the R + Installation and Administration Manual contain detailed + instructions for installing R on various platforms (Linux, OS X, + and Windows being the main ones). +

+
+
+

2.

+

+ Start the R program; on Windows and OS X, this will usually mean + double-clicking on the R application, on UNIX-like systems, type + “R” at a shell prompt. +

+
+
+

3.

+

+ As a first step with R, start the R help browser by typing + help.start() in the R command window. For help + on any function, e.g. the “mean” function, type + ?mean. +

+
+
+
+
+
+
+

2. Get latest version of Bioconductor

+

+ Once R has been installed, get the latest version of Bioconductor by + starting R and entering the following commands. +

+

+ It may be possible to change the Bioconductor version of an existing + installation; + see the ‘Changing version’ section of the BiocManager vignette. +

+

+ Details, including instructions to + install additional packages + and to update, + find, and + troubleshoot are + provided below. A + devel + version of Bioconductor is available. There are good + reasons for using BiocManager::install() + for managing Bioconductor resources. +

+
+        
+if (!require("BiocManager", quietly = TRUE))
+    install.packages("BiocManager")
+BiocManager::install(version = "3.17")
+        
+        
+ blank_ + blank_ +
+
+
diff --git a/layouts/default.html b/layouts/default.html index 752391822..67f3b9280 100644 --- a/layouts/default.html +++ b/layouts/default.html @@ -12,10 +12,12 @@ <% if @item[:hero] %>
+
<% if (@item.identifier != '/') %> <%= render("/components/breadcrumbs/") %> <% end %> <%= render(@item[:hero]) %> +
<%end%>