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 @@ +
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. +
+ +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. +
+ ++ 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. +
+ ++ 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. +
+ ++ 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. +
+ +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. +
+ +
+ One likely reason for BiocManager not working on your system could be that
+ your version of R is too old for
+ 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(). +
+ ++ Bioconductor is also available as + Docker images or available for use in the + AnVIL. +
+ ++ 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"))
+
+
++ 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. +
+ +++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. +
+
+ 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")
+
+
+
+
+