upgrade
This commit is contained in:
parent
937b55991c
commit
50e53b3dd6
8 changed files with 34 additions and 181 deletions
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/NixOS/nixpkgs.git",
|
||||
"rev": "a3a3dda3bacf61e8a39258a0ed9c924eeca8e293",
|
||||
"date": "2020-12-21T23:27:46+09:00",
|
||||
"path": "/nix/store/w6v7bln3aqbx4656fknf9q4w9wksk42r-nixpkgs",
|
||||
"sha256": "1ahn3srby9rjh7019b26n4rb4926di1lqdrclxfy2ff7nlf0yhd5",
|
||||
"rev": "e4adbfbab8aadf9d80a93d40fb612cb910073af9",
|
||||
"date": "2021-01-25T20:25:09+01:00",
|
||||
"path": "/nix/store/i43dyq07kr5dy1rbn6vqffg1pwcl9hi9-nixpkgs",
|
||||
"sha256": "0fs32adk4x5xg9m00nykhxhka927wrnwkjx59as673swh46hdvck",
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
"leaveDotGit": false
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"url": "https://github.com/NixOS/nixpkgs.git",
|
||||
"rev": "e9158eca70ae59e73fae23be5d13d3fa0cfc78b4",
|
||||
"date": "2020-12-09T15:09:49+01:00",
|
||||
"path": "/nix/store/cx4wf6pi1l2p01sz7png891m65kinfz3-nixpkgs",
|
||||
"sha256": "0cnmvnvin9ixzl98fmlm3g17l6w95gifqfb3rfxs55c0wj2ddy53",
|
||||
"rev": "891f607d5301d6730cb1f9dcf3618bcb1ab7f10e",
|
||||
"date": "2021-01-25T12:54:49+01:00",
|
||||
"path": "/nix/store/0fdmvrw6pcwqf28ymvl8qfbflc9m65jc-nixpkgs",
|
||||
"sha256": "1cr39f0sbr0h5d83dv1q34mcpwnkwwbdk5fqlyqp2mnxghzwssng",
|
||||
"fetchSubmodules": false,
|
||||
"deepClone": false,
|
||||
"leaveDotGit": false
|
||||
|
|
|
@ -23,9 +23,6 @@ in {
|
|||
|
||||
# foto
|
||||
#fuji-cam-wifi-tool
|
||||
|
||||
# processing
|
||||
processing
|
||||
];
|
||||
|
||||
environment.variables.RECIPE_HOME = "$HOME/mahlzeit";
|
||||
|
|
|
@ -175,10 +175,22 @@ let
|
|||
query = "from:gog.com AND subject:Bestellung";
|
||||
tags = [ "+billing" "+gog" ];
|
||||
}
|
||||
{
|
||||
query = "from:stadtmobil.de";
|
||||
tags = [ "+billing" "+stadtmobil" "-inbox" "-unread" ];
|
||||
}
|
||||
{
|
||||
query = "from:drive-now.com";
|
||||
tags = [ "+billing" "+drivenow" "-inbox" "-unread" ];
|
||||
}
|
||||
{
|
||||
query = "from:data-treuhand.de";
|
||||
tags = [ "+mindcurv" "+work" "-inbox" "-unread" ];
|
||||
}
|
||||
{
|
||||
query = "from:immocation.de";
|
||||
tags = [ "+immobilien" "-inbox" ];
|
||||
}
|
||||
{
|
||||
query = "from:tinc-vpn.org";
|
||||
tags = [ "+tinc" ];
|
||||
|
|
|
@ -21,16 +21,18 @@ let
|
|||
${pkgs.taskwarrior}/bin/task "$@"
|
||||
'';
|
||||
|
||||
#vit = unstable.vit.overrideAttrs (old: rec {
|
||||
# name = "vit-${version}";
|
||||
# version = "master";
|
||||
# src = pkgs.fetchgit {
|
||||
# url = "https://github.com/scottkosty/vit.git";
|
||||
# rev = "7200949214362139e8073b6ca1a58cc756b2ebd0";
|
||||
# sha256 = "1s0rvqn8xjy3qiw9034wfzz2r7mwary70x32fqprz2w2h5r73j2m";
|
||||
# };
|
||||
#});
|
||||
vit = pkgs.vit;
|
||||
vit = unstable.vit.overrideAttrs (old: rec {
|
||||
name = "vit-${version}";
|
||||
version = "master";
|
||||
src = pkgs.fetchgit {
|
||||
url = "https://github.com/scottkosty/vit.git";
|
||||
#rev = "7200949214362139e8073b6ca1a58cc756b2ebd0";
|
||||
#sha256 = "1s0rvqn8xjy3qiw9034wfzz2r7mwary70x32fqprz2w2h5r73j2m";
|
||||
rev = "cfe5975bd054fe8ffe79527a1af6356528b60c63";
|
||||
sha256 = "12fjx91l7cxxan3pg0xqmizpabp5g482vxqq5f3r8b6dw70l15hk";
|
||||
};
|
||||
});
|
||||
#vit = pkgs.vit;
|
||||
|
||||
in {
|
||||
|
||||
|
|
|
@ -46,8 +46,6 @@ in {
|
|||
|
||||
emo = callPackage ./emoji { };
|
||||
|
||||
processing = callPackage ./processing { jdk = super.oraclejdk8; };
|
||||
|
||||
otpmenu = callPackage ./otpmenu { };
|
||||
|
||||
taskwarrior-hooks = callPackage ./taskwarrior-hooks { };
|
||||
|
|
|
@ -1,157 +0,0 @@
|
|||
{ stdenv, lib, jdk, patchelf, makeWrapper, xorg, zip, unzip, rsync, fetchzip
|
||||
, xdg_utils ? null, gsettings-desktop-schemas ? null }:
|
||||
let
|
||||
arch = "linux64";
|
||||
libs = (with xorg; [ libXext libX11 libXrender libXtst libXi libXxf86vm ]);
|
||||
repeatString = n: str:
|
||||
lib.concatStrings (lib.lists.map (lib.const str) (lib.range 1 n));
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "processing";
|
||||
version = "3.5.4";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://download.processing.org/${pname}-${version}-${arch}.tgz";
|
||||
sha256 = "0fqjsa1j05wriwpa7fzvv2rxhhsz6ixqzf52syxr4z74j3wkxk8k";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ patchelf makeWrapper zip unzip rsync ]
|
||||
++ (lib.optional (xdg_utils != null) xdg_utils);
|
||||
buildInputs = [ jdk ] ++ libs;
|
||||
|
||||
dontConfigure = true;
|
||||
|
||||
# Suppress "Not fond of this Java VM" message box.
|
||||
# The block of code we're replacing is:
|
||||
#
|
||||
# $ javap -v processing/app/platform/LinuxPlatform.class
|
||||
# 52: ldc #42 // String Not fond of this Java VM
|
||||
# 54: ldc #44 // String Processing requires Java 8 from Oracle. ...
|
||||
# 56: aconst_null
|
||||
# 57: invokestatic #46 // Method processing/app/Messages.showWarning:(
|
||||
# // Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
|
||||
#
|
||||
# which gets written to the .class file as the following bytes:
|
||||
#
|
||||
# $ xxd processing/app/platform/LinuxPlatform.class
|
||||
# 00000c90: .... .... .... .... .... .... .... 122a
|
||||
# 00000ca0: 122c 01b8 002e .... .... .... .... ....
|
||||
#
|
||||
# i.e. 8 bytes starting at 0xc9e (= 3230):
|
||||
#
|
||||
# 12 2a | ldc 42
|
||||
# 12 2c | ldc 44
|
||||
# 01 | aconst_null
|
||||
# b8 00 2e | invokestatic 46
|
||||
#
|
||||
# We overwrite those instructions with null bytes (`nop`) using `dd`.
|
||||
#
|
||||
# See the JVM instruction set specification:
|
||||
# https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html
|
||||
# Patching binary files with `dd`:
|
||||
# https://stackoverflow.com/a/5586379
|
||||
|
||||
popupSuppress = true;
|
||||
# Used by sha256sum -- can't be a base-32 Nix hash.
|
||||
linuxPlatformSHA256 =
|
||||
"b8ceb19e1c8d022f963d2abfb56abc02b5f037e32042f522e1f2663d0ee8f18d";
|
||||
popupClassToPatch = "processing/app/platform/LinuxPlatform.class";
|
||||
popupBytesToOverwrite = 8;
|
||||
popupStartOverwritingAt = 3230;
|
||||
|
||||
buildPhase = lib.optionalString popupSuppress ''
|
||||
# `unzip` will need to make a directory named `processing`, but right now
|
||||
# that's a shell script. Move it to the side and we'll move it back when
|
||||
# we're done.
|
||||
mv processing processing-bin
|
||||
|
||||
unzip lib/pde.jar $popupClassToPatch
|
||||
|
||||
# Make sure the extracted class has the right checksum -- if
|
||||
# `LinuxPlatform.class` changes in a future release, we'll need to
|
||||
# recalculate the correct offset.
|
||||
echo $linuxPlatformSHA256 $popupClassToPatch \
|
||||
| sha256sum --check
|
||||
|
||||
# Overwrite the 8 bytes / 4 instructions.
|
||||
printf '${repeatString popupBytesToOverwrite "\\x00"}' \
|
||||
| dd of=$popupClassToPatch \
|
||||
bs=1 \
|
||||
seek=$popupStartOverwritingAt \
|
||||
conv=notrunc
|
||||
|
||||
# Update `LinuxPlatform.class` in the `.jar`.
|
||||
zip lib/pde.jar -u $popupClassToPatch
|
||||
|
||||
# Remove the temporary directory named `processing` and move the shell
|
||||
# script named `processing` back to its original location.
|
||||
rm -r processing
|
||||
mv processing-bin processing
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/${pname}
|
||||
rsync --copy-links --safe-links --recursive . $out/${pname}
|
||||
|
||||
# Use our JDK
|
||||
rm -r $out/${pname}/java
|
||||
ln -s ${jdk} $out/${pname}/java
|
||||
|
||||
for binary in ${pname} ${pname}-java
|
||||
do
|
||||
makeWrapper $out/${pname}/$binary $out/bin/$binary \
|
||||
--argv0 $binary \
|
||||
${
|
||||
lib.optionalString (gsettings-desktop-schemas == null)
|
||||
"--prefix XDG_DATA_DIRS : ${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}"
|
||||
} \
|
||||
--prefix _JAVA_OPTIONS " " "-Dawt.useSystemAAFontSettings=lcd" \
|
||||
--prefix LD_LIBRARY_PATH : "${xorg.libXxf86vm}/lib"
|
||||
done
|
||||
'' + (lib.optionalString (xdg_utils != null) ''
|
||||
# See: $out/processing/install.sh
|
||||
resource_name="processing-pde"
|
||||
desktop_file="$out/${pname}/lib/$resource_name.desktop"
|
||||
mkdir -p $out/share/{applications,desktop-directories,icons,mime/packages,icons/hicolor}
|
||||
mkdir -p $out/etc/xdg
|
||||
|
||||
substitute "$out/${pname}/lib/desktop.template" "$desktop_file" \
|
||||
--replace "<BINARY_LOCATION>" "$out/bin/processing" \
|
||||
--replace "<ICON_NAME>" "$resource_name"
|
||||
|
||||
export XDG_UTILS_INSTALL_MODE="system"
|
||||
export XDG_DATA_DIRS="$out/share"
|
||||
export XDG_CONFIG_DIRS="$out/etc/xdg"
|
||||
|
||||
for size in 16 32 48 64 128 256 512 1024
|
||||
do
|
||||
for name in "$resource_name" text-x-processing
|
||||
do
|
||||
xdg-icon-resource install \
|
||||
--context mimetypes --size "$size" \
|
||||
"$out/${pname}/lib/icons/pde-$size.png" "$resource_name"
|
||||
done
|
||||
done
|
||||
|
||||
# Install the created *.desktop file
|
||||
xdg-desktop-menu install "$desktop_file"
|
||||
|
||||
# Install Processing mime type
|
||||
xdg-mime install "$out/${pname}/lib/$resource_name.xml"
|
||||
'');
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A language and IDE for electronic arts";
|
||||
longDescription = ''
|
||||
Processing is a flexible software sketchbook and a language for learning
|
||||
how to code within the context of the visual arts. Since 2001, Processing
|
||||
has promoted software literacy within the visual arts and visual literacy
|
||||
within technology. There are tens of thousands of students, artists,
|
||||
designers, researchers, and hobbyists who use Processing for learning and
|
||||
prototyping.
|
||||
'';
|
||||
homepage = "https://processing.org";
|
||||
downloadPage = "https://processing.org/download/";
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
|
@ -108,7 +108,7 @@ in {
|
|||
enable = true;
|
||||
# msmtp --serverinfo --tls --tls-certcheck=off -a ingolf-wagner
|
||||
tls.fingerprint =
|
||||
"EA:C7:AB:DF:BE:1F:D8:07:02:A3:5B:DB:CA:1A:63:02:E7:D1:3D:34:94:22:D7:5C:C1:57:EA:48:2A:02:14:25";
|
||||
"79:7C:A8:AB:B9:70:02:DC:18:A5:25:10:BC:0B:8D:84:01:9F:57:D3:1C:FE:4C:7D:8B:54:00:7A:94:C7:D2:46";
|
||||
};
|
||||
gpg = {
|
||||
encryptByDefault = true;
|
||||
|
@ -232,6 +232,7 @@ in {
|
|||
virtual-mailboxes "Sononym" "notmuch://?query=(tag:sononym AND NOT tag:muted)"
|
||||
virtual-mailboxes "c-base" "notmuch://?query=(tag:cbase AND NOT tag:muted)"
|
||||
virtual-mailboxes "shopping" "notmuch://?query=((tag:billing OR tag:shopping) AND NOT tag:muted)"
|
||||
virtual-mailboxes "Immobilien" "notmuch://?query=(tag:immobilien AND NOT tag:muted)"
|
||||
virtual-mailboxes "NixOS Github" "notmuch://?query=(tag:github AND tag:nixos AND NOT tag:muted)"
|
||||
virtual-mailboxes "Discourse.all" "notmuch://?query=(tag:discourse AND NOT tag:muted)"
|
||||
virtual-mailboxes "Discourse.development" "notmuch://?query=(tag:discourse AND tag:development AND NOT tag:muted)"
|
||||
|
|
Loading…
Reference in a new issue