Skip to content

Instantly share code, notes, and snippets.

@mausch
mausch / Dockerfile
Created May 27, 2020 08:32
Nix on Jupyter on Docker
FROM jupyter/minimal-notebook:36bce751008f
USER root
RUN apt-get update && apt-get install -y curl
RUN mkdir /nix
RUN chown jovyan /nix
ENV PATH=/home/jovyan/.nix-profile/bin:$PATH
@mausch
mausch / get-dotnet-deps.nix
Created August 8, 2021 22:38
WIP get nuget packages from packages.lock.json for nix
{ lockFile }:
let
pkgs = import <nixpkgs> {};
lib = pkgs.lib;
procLockFile =
lockFile:
let
# https://github.com/NuGet/NuGet.Client/blob/f24bad0668193ce21a1db8cabd1ce95ba509c7f0/src/NuGet.Core/NuGet.Packaging/PackageArchiveReader.cs#L431
# https://github.com/NuGet/NuGet.Client/blob/f24bad0668193ce21a1db8cabd1ce95ba509c7f0/src/NuGet.Core/NuGet.Packaging/PackageExtractor.cs#L487
@mausch
mausch / SolrNetAuthTest.cs
Created July 15, 2021 23:03
SolrNet + MS DI auth
using System;
using System.Collections.Generic;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Microsoft.Extensions.DependencyInjection;
using SolrNet;
namespace SolrNetAuthTest
{
// http://higherkindedtripe.wordpress.com/2011/08/10/impredicative-polymorphism-nah-macros/
type Program = Program // dummy
type ProgramState = {
Exec : Program list
Integer : int list
Float : float list
Code : Program list
Boolean : bool list
@mausch
mausch / starspace.nix
Created January 17, 2021 16:29
Nix package for Facebook's StarSpace
{ pkgs ? (import (fetchTarball https://github.com/NixOS/nixpkgs/archive/e298629fec0fe6ffbd6e30dcb1fc4718bc807cb4.tar.gz) {})}:
with pkgs;
stdenv.mkDerivation {
pname = "starspace";
version = "8aee0a950aa607c023e5c91cff518bec335b5df5";
nativeBuildInputs = [
autoPatchelfHook
];
# Usage: $ nix eval "(builtins.attrNames (import (builtins.fetchurl "https://matthewbauer.us/generate-versions.nix") {}).emacs)"
# $ nix run "(import (builtins.fetchurl "https://matthewbauer.us/generate-versions.nix") {}).emacs.\"24.3\"" -u LANG -c emacs
{}:
let
channels = [ "nixos-20.09" "nixos-20.03" "nixos-19.09" "nixpkgs-unstable" ];
getSet = channel: (import (builtins.fetchTarball "channel:${channel}") {inherit (builtins.currentSystem);}).pkgs;
@mausch
mausch / dbeaver.sh
Created May 13, 2020 14:34
Run DBeaver in docker
#!/bin/bash
set -eu
cat << 'EOF' > ~/dbeaver.dockerfile
FROM openjdk:14-slim
RUN apt-get update && apt-get install -y wget libgtk-3-dev
ENV VERSION 6.2.1
RUN wget https://dbeaver.io/files/${VERSION}/dbeaver-ce-${VERSION}-linux.gtk.x86_64.tar.gz
RUN tar xvzf dbeaver-ce-${VERSION}-linux.gtk.x86_64.tar.gz
RUN rm dbeaver-ce-${VERSION}-linux.gtk.x86_64.tar.gz
Kudos to https://matthewbauer.us/blog/static-nix.html
$ docker run --rm -it -w /root alpine
$ apk add curl
$ curl https://matthewbauer.us/nix -o nix && chmod +x nix
$ ./nix run -f channel:nixpkgs-unstable awscli -c aws --version
aws-cli/1.17.13 Python/3.7.7 Linux/4.19.116 botocore/1.14.13
let
pkgs = import <nixpkgs> {};
awscli = with pkgs; stdenv.mkDerivation {
name = "awscli";
src = fetchzip {
url = https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip;
sha256 = "1pqvqhxbikqnji7nazvaqnk2czlmr3kvs1zyl13w96ym4if3np1v";
};
propagatedBuildInputs = with pkgs; [
];
@mausch
mausch / crash.log
Created May 3, 2020 14:46
JetBrains Rider 2020.1 crash
Internal error. Please refer to http://jb.gg/ide/critical-startup-errors
java.util.concurrent.CompletionException: com.intellij.ide.plugins.StartupAbortedException: Fatal error initializing 'com.jetbrains.rider.protocol.ProtocolManagerInitializer'
at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:314)
at java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:319)
at java.base/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1739)
at com.intellij.openapi.application.TransactionGuardImpl$2.run(TransactionGuardImpl.java:201)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:831)
at com.intellij.openapi.application.impl.ApplicationImpl.lambda$invokeLater$4(ApplicationImpl.java:310)
at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:80)