From 00af52229ec39be87e7633db7f2dbc090adc3dff Mon Sep 17 00:00:00 2001 From: David Flores Date: Sun, 10 Mar 2024 23:43:32 +0100 Subject: [PATCH] fastqc: init at 0.12.1 fastqc: remove trailing whitespaces fastqc: moved to by-name hierarchy Update pkgs/by-name/fa/fastqc/package.nix Co-authored-by: OTABI Tomoya Update pkgs/by-name/fa/fastqc/package.nix Co-authored-by: OTABI Tomoya Update pkgs/by-name/fa/fastqc/package.nix Co-authored-by: OTABI Tomoya Update pkgs/by-name/fa/fastqc/package.nix Co-authored-by: OTABI Tomoya Update pkgs/by-name/fa/fastqc/package.nix Co-authored-by: OTABI Tomoya fastqc: suggested code changes applied fastqc: added testVersion fastqc: some corrections fastqc: remove with lib; --- pkgs/by-name/fa/fastqc/package.nix | 83 ++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 pkgs/by-name/fa/fastqc/package.nix diff --git a/pkgs/by-name/fa/fastqc/package.nix b/pkgs/by-name/fa/fastqc/package.nix new file mode 100644 index 000000000000..e7973ab0d602 --- /dev/null +++ b/pkgs/by-name/fa/fastqc/package.nix @@ -0,0 +1,83 @@ +{ lib, + stdenv, + fetchzip, + jre, + perl, + makeWrapper, + imagemagick, + makeDesktopItem, + copyDesktopItems, + desktopToDarwinBundle, + testers +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "fastqc"; + version = "0.12.1"; + + src = fetchzip { + url = "https://www.bioinformatics.babraham.ac.uk/projects/fastqc/fastqc_v${finalAttrs.version}.zip"; + hash = "sha256-TenRG2x8ivJ2HM2ZpLaJShp0yI0Qc6K5lW5/NJFAa1I"; + }; + + dontBuild = true; + + nativeBuildInputs = [ makeWrapper imagemagick ] + ++ lib.optional stdenv.isLinux copyDesktopItems # postInstallHook + ++ lib.optional stdenv.isDarwin desktopToDarwinBundle; #fixupOutputHook + buildInputs = [ jre perl]; + + desktopItem = (makeDesktopItem { + name = "FastQC"; + exec = "fastqc"; + icon = "fastqc"; + desktopName = "FastQC"; + comment = finalAttrs.meta.description; + categories = [ "Science" ]; + }); + desktopItems = [ finalAttrs.desktopItem ]; + + installPhase = '' + runHook preInstall + + mkdir -p $out/{bin,FastQC} + cp -r $src/* $out/FastQC + + # Create desktop item + mkdir -p $out/share/{applications,icons} + # Freedesktop doesn't support windows ICO files. Use imagemagick to convert it to PNG + convert $out/FastQC/fastqc_icon.ico $out/share/icons/fastqc.png + + runHook postInstall + ''; + + preFixup = '' + makeWrapper $out/FastQC/fastqc $out/bin/fastqc --prefix PATH : ${jre}/bin + ''; + + passthru.tests.version = testers.testVersion { + package = finalAttrs.finalPackage; + version = "v${finalAttrs.version}"; + }; + + meta = { + description = "A quality control application for high throughput sequence data"; + longDescription = '' + FastQC aims to provide a simple way to do some quality control checks on raw sequence data coming from high throughput sequencing pipelines. It provides a modular set of analyses which you can use to give a quick impression of whether your data has any problems of which you should be aware before doing any further analysis. + + The main functions of FastQC are + + - Import of data from BAM, SAM or FastQ files (any variant) + - Providing a quick overview to tell you in which areas there may be problems + - Summary graphs and tables to quickly assess your data + - Export of results to an HTML based permanent report + - Offline operation to allow automated generation of reports without running the interactive application + ''; + homepage = "https://www.bioinformatics.babraham.ac.uk/projects/fastqc/"; + sourceProvenance = [ lib.sourceTypes.binaryNativeCode ]; + license = with lib.licenses; [ gpl3Plus asl20 ]; + maintainers = [ lib.maintainers.dflores ]; + mainProgram = "fastqc"; + platforms = lib.platforms.unix; + }; +})