4a7f99d55d
Part of: https://github.com/NixOS/nixpkgs/issues/108938 meta = with stdenv.lib; is a widely used pattern. We want to slowly remove the `stdenv.lib` indirection and encourage people to use `lib` directly. Thus let’s start with the meta field. This used a rewriting script to mostly automatically replace all occurances of this pattern, and add the `lib` argument to the package header if it doesn’t exist yet. The script in its current form is available at https://cs.tvl.fyi/depot@2f807d7f141068d2d60676a89213eaa5353ca6e0/-/blob/users/Profpatsch/nixpkgs-rewriter/default.nix
60 lines
1.8 KiB
Nix
60 lines
1.8 KiB
Nix
{ lib, stdenv, fetchFromGitHub, curl, fuse, libxml2, pkgconfig }:
|
|
|
|
let
|
|
srcs = {
|
|
boxfs2 = fetchFromGitHub {
|
|
sha256 = "10af1l3sjnh25shmq5gdnpyqk4vrq7i1zklv4csf1n2nrahln8j8";
|
|
rev = "d7018b0546d2dae956ae3da3fb95d2f63fa6d3ff";
|
|
repo = "boxfs2";
|
|
owner = "drotiro";
|
|
};
|
|
libapp = fetchFromGitHub {
|
|
sha256 = "1p2sbxiranan2n2xsfjkp3c6r2vcs57ds6qvjv4crs1yhxr7cp00";
|
|
rev = "febebe2bc0fb88d57bdf4eb4a2a54c9eeda3f3d8";
|
|
repo = "libapp";
|
|
owner = "drotiro";
|
|
};
|
|
libjson = fetchFromGitHub {
|
|
sha256 = "1vhss3gq44nl61fbnh1l3qzwvz623gwhfgykf1lf1p31rjr7273w";
|
|
rev = "75a7f50fca2c667bc5f32cdd6dd98f2b673f6657";
|
|
repo = "libjson";
|
|
owner = "vincenthz";
|
|
};
|
|
};
|
|
in stdenv.mkDerivation {
|
|
pname = "boxfs";
|
|
version = "2-20150109";
|
|
|
|
src = srcs.boxfs2;
|
|
|
|
prePatch = with srcs; ''
|
|
substituteInPlace Makefile --replace "git pull" "true"
|
|
cp -a --no-preserve=mode ${libapp} libapp
|
|
cp -a --no-preserve=mode ${libjson} libjson
|
|
'';
|
|
patches = [ ./work-around-API-borkage.patch ];
|
|
|
|
buildInputs = [ curl fuse libxml2 ];
|
|
nativeBuildInputs = [ pkgconfig ];
|
|
|
|
buildFlags = [ "static" ];
|
|
|
|
installPhase = ''
|
|
mkdir -p $out/bin
|
|
install boxfs boxfs-init $out/bin
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "FUSE file system for box.com accounts";
|
|
longDescription = ''
|
|
Store files on box.com (an account is required). The first time you run
|
|
boxfs, you will need to complete the authentication (oauth2) process and
|
|
grant access to your box.com account. Just follow the instructions on
|
|
the terminal and in your browser. When you've done using your files,
|
|
unmount the file system with `fusermount -u mountpoint`.
|
|
'';
|
|
homepage = "https://github.com/drotiro/boxfs2";
|
|
license = licenses.gpl3;
|
|
platforms = platforms.linux;
|
|
};
|
|
}
|