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",
|
"url": "https://github.com/NixOS/nixpkgs.git",
|
||||||
"rev": "a3a3dda3bacf61e8a39258a0ed9c924eeca8e293",
|
"rev": "e4adbfbab8aadf9d80a93d40fb612cb910073af9",
|
||||||
"date": "2020-12-21T23:27:46+09:00",
|
"date": "2021-01-25T20:25:09+01:00",
|
||||||
"path": "/nix/store/w6v7bln3aqbx4656fknf9q4w9wksk42r-nixpkgs",
|
"path": "/nix/store/i43dyq07kr5dy1rbn6vqffg1pwcl9hi9-nixpkgs",
|
||||||
"sha256": "1ahn3srby9rjh7019b26n4rb4926di1lqdrclxfy2ff7nlf0yhd5",
|
"sha256": "0fs32adk4x5xg9m00nykhxhka927wrnwkjx59as673swh46hdvck",
|
||||||
"fetchSubmodules": false,
|
"fetchSubmodules": false,
|
||||||
"deepClone": false,
|
"deepClone": false,
|
||||||
"leaveDotGit": false
|
"leaveDotGit": false
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
{
|
{
|
||||||
"url": "https://github.com/NixOS/nixpkgs.git",
|
"url": "https://github.com/NixOS/nixpkgs.git",
|
||||||
"rev": "e9158eca70ae59e73fae23be5d13d3fa0cfc78b4",
|
"rev": "891f607d5301d6730cb1f9dcf3618bcb1ab7f10e",
|
||||||
"date": "2020-12-09T15:09:49+01:00",
|
"date": "2021-01-25T12:54:49+01:00",
|
||||||
"path": "/nix/store/cx4wf6pi1l2p01sz7png891m65kinfz3-nixpkgs",
|
"path": "/nix/store/0fdmvrw6pcwqf28ymvl8qfbflc9m65jc-nixpkgs",
|
||||||
"sha256": "0cnmvnvin9ixzl98fmlm3g17l6w95gifqfb3rfxs55c0wj2ddy53",
|
"sha256": "1cr39f0sbr0h5d83dv1q34mcpwnkwwbdk5fqlyqp2mnxghzwssng",
|
||||||
"fetchSubmodules": false,
|
"fetchSubmodules": false,
|
||||||
"deepClone": false,
|
"deepClone": false,
|
||||||
"leaveDotGit": false
|
"leaveDotGit": false
|
||||||
|
|
|
@ -23,9 +23,6 @@ in {
|
||||||
|
|
||||||
# foto
|
# foto
|
||||||
#fuji-cam-wifi-tool
|
#fuji-cam-wifi-tool
|
||||||
|
|
||||||
# processing
|
|
||||||
processing
|
|
||||||
];
|
];
|
||||||
|
|
||||||
environment.variables.RECIPE_HOME = "$HOME/mahlzeit";
|
environment.variables.RECIPE_HOME = "$HOME/mahlzeit";
|
||||||
|
|
|
@ -175,10 +175,22 @@ let
|
||||||
query = "from:gog.com AND subject:Bestellung";
|
query = "from:gog.com AND subject:Bestellung";
|
||||||
tags = [ "+billing" "+gog" ];
|
tags = [ "+billing" "+gog" ];
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
query = "from:stadtmobil.de";
|
||||||
|
tags = [ "+billing" "+stadtmobil" "-inbox" "-unread" ];
|
||||||
|
}
|
||||||
{
|
{
|
||||||
query = "from:drive-now.com";
|
query = "from:drive-now.com";
|
||||||
tags = [ "+billing" "+drivenow" "-inbox" "-unread" ];
|
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";
|
query = "from:tinc-vpn.org";
|
||||||
tags = [ "+tinc" ];
|
tags = [ "+tinc" ];
|
||||||
|
|
|
@ -21,16 +21,18 @@ let
|
||||||
${pkgs.taskwarrior}/bin/task "$@"
|
${pkgs.taskwarrior}/bin/task "$@"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
#vit = unstable.vit.overrideAttrs (old: rec {
|
vit = unstable.vit.overrideAttrs (old: rec {
|
||||||
# name = "vit-${version}";
|
name = "vit-${version}";
|
||||||
# version = "master";
|
version = "master";
|
||||||
# src = pkgs.fetchgit {
|
src = pkgs.fetchgit {
|
||||||
# url = "https://github.com/scottkosty/vit.git";
|
url = "https://github.com/scottkosty/vit.git";
|
||||||
# rev = "7200949214362139e8073b6ca1a58cc756b2ebd0";
|
#rev = "7200949214362139e8073b6ca1a58cc756b2ebd0";
|
||||||
# sha256 = "1s0rvqn8xjy3qiw9034wfzz2r7mwary70x32fqprz2w2h5r73j2m";
|
#sha256 = "1s0rvqn8xjy3qiw9034wfzz2r7mwary70x32fqprz2w2h5r73j2m";
|
||||||
# };
|
rev = "cfe5975bd054fe8ffe79527a1af6356528b60c63";
|
||||||
#});
|
sha256 = "12fjx91l7cxxan3pg0xqmizpabp5g482vxqq5f3r8b6dw70l15hk";
|
||||||
vit = pkgs.vit;
|
};
|
||||||
|
});
|
||||||
|
#vit = pkgs.vit;
|
||||||
|
|
||||||
in {
|
in {
|
||||||
|
|
||||||
|
|
|
@ -46,8 +46,6 @@ in {
|
||||||
|
|
||||||
emo = callPackage ./emoji { };
|
emo = callPackage ./emoji { };
|
||||||
|
|
||||||
processing = callPackage ./processing { jdk = super.oraclejdk8; };
|
|
||||||
|
|
||||||
otpmenu = callPackage ./otpmenu { };
|
otpmenu = callPackage ./otpmenu { };
|
||||||
|
|
||||||
taskwarrior-hooks = callPackage ./taskwarrior-hooks { };
|
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;
|
enable = true;
|
||||||
# msmtp --serverinfo --tls --tls-certcheck=off -a ingolf-wagner
|
# msmtp --serverinfo --tls --tls-certcheck=off -a ingolf-wagner
|
||||||
tls.fingerprint =
|
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 = {
|
gpg = {
|
||||||
encryptByDefault = true;
|
encryptByDefault = true;
|
||||||
|
@ -232,6 +232,7 @@ in {
|
||||||
virtual-mailboxes "Sononym" "notmuch://?query=(tag:sononym AND NOT tag:muted)"
|
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 "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 "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 "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.all" "notmuch://?query=(tag:discourse AND NOT tag:muted)"
|
||||||
virtual-mailboxes "Discourse.development" "notmuch://?query=(tag:discourse AND tag:development 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