Skip to content

Instantly share code, notes, and snippets.

View mfansler's full-sized avatar
🐌
Occupied

Mervin Fansler mfansler

🐌
Occupied
View GitHub Profile
@mfansler
mfansler / list_r_pkg_linked_libs.sh
Created December 22, 2022 23:43
List all libraries a Conda Forge R library links against
#!/usr/bin/env bash -l
## PARAMS
## file should have one "[name]=[version]=[build]" per line
FILE_PKG_BUILDS="r-tiff.cf_pkgs.txt"
##
DYLIB_LOC="lib/R/library/tiff/libs"
tmp=$(mktemp -d)
@mfansler
mfansler / new-cran-pkg.sh
Last active November 20, 2024 17:40
Conda Forge `staged-recipes` utility scripts
#!/usr/bin/env bash -l
#' Usage: `bash -l new-cran-pkg.sh {r-package}`
#' Purpose: Generates a Conda Forge recipe using `conda_r_skeleton_helper` and
#' pushes this to a personal fork of `staged-recipes`.
#' Notes: Should be located in and run from a `staged-recipes` clone prefix.
#' `git remote -v` should show `origin` set to a personal fork
#' and `upstream` set to '[email protected]:conda-forge/staged-recipes.git'.
#' CRAN package name should be prefixed with 'r-' and given in all lowercase.
set -xe -o pipefail
## see https://stackoverflow.com/q/76039888/570918
diffmat <- function(drow_margin, dcol_margin, freeze=TRUE) {
nrow <- length(drow_margin)
ncol <- length(dcol_margin)
rmat <- matrix(drow_margin, nrow, ncol)
cmat <- matrix(dcol_margin, nrow, ncol, byrow=TRUE)
dmat <- 0.5*(rmat + cmat)
if (freeze) {
## keep satisfactory rows and columns fixed
@mfansler
mfansler / LICENSE-CC0
Last active October 7, 2025 07:23
Conda Forge R Team Scraps
Creative Commons Legal Code
CC0 1.0 Universal
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM