aboutsummaryrefslogtreecommitdiff
path: root/.config/nixpkgs
diff options
context:
space:
mode:
Diffstat (limited to '.config/nixpkgs')
-rw-r--r--.config/nixpkgs/config.nix273
-rw-r--r--.config/nixpkgs/helpers/mkShellMinimal.nix83
-rw-r--r--.config/nixpkgs/helpers/mkShellPure.nix59
-rw-r--r--.config/nixpkgs/packages/awesome/package.nix98
-rw-r--r--.config/nixpkgs/packages/beaker-browser/default.nix18
-rw-r--r--.config/nixpkgs/packages/boomer/package.nix (renamed from .config/nixpkgs/packages/boomer/default.nix)26
-rw-r--r--.config/nixpkgs/packages/chromexup/package.nix (renamed from .config/nixpkgs/packages/chromexup/default.nix)0
-rw-r--r--.config/nixpkgs/packages/csstidy/package.nix (renamed from .config/nixpkgs/packages/csstidy/default.nix)6
-rw-r--r--.config/nixpkgs/packages/dmenu/package.nix (renamed from .config/nixpkgs/packages/dmenu/default.nix)1
-rw-r--r--.config/nixpkgs/packages/edl/default.nix43
-rw-r--r--.config/nixpkgs/packages/emacs-batch-indent/package.nix30
-rw-r--r--.config/nixpkgs/packages/gnaural/default.nix29
-rw-r--r--.config/nixpkgs/packages/hugo/default.nix32
-rw-r--r--.config/nixpkgs/packages/mkbootfs/package.nix (renamed from .config/nixpkgs/packages/mkbootfs/default.nix)0
-rw-r--r--.config/nixpkgs/packages/mkbootimg/package.nix (renamed from .config/nixpkgs/packages/mkbootimg/default.nix)0
-rw-r--r--.config/nixpkgs/packages/nerdfonts-dejavu-sans-mono/package.nix (renamed from .config/nixpkgs/packages/nerdfonts-dejavu-sans-mono/default.nix)16
-rw-r--r--.config/nixpkgs/packages/nixpkgs.lib/package.nix59
-rw-r--r--.config/nixpkgs/packages/ntrviewer/package.nix (renamed from .config/nixpkgs/packages/ntrviewer/default.nix)0
-rw-r--r--.config/nixpkgs/packages/pdf2htmlex/package.nix17
-rw-r--r--.config/nixpkgs/packages/phar-composer/package.nix29
-rw-r--r--.config/nixpkgs/packages/planner/default.nix48
-rw-r--r--.config/nixpkgs/packages/qprompt/package.nix30
-rw-r--r--.config/nixpkgs/packages/redbean/package.nix29
-rw-r--r--.config/nixpkgs/packages/rofi/package.nix49
-rw-r--r--.config/nixpkgs/packages/ruamel.yaml.cmd/package.nix (renamed from .config/nixpkgs/packages/ruamel.yaml.cmd/default.nix)5
-rw-r--r--.config/nixpkgs/packages/rufo/default.nix33
-rw-r--r--.config/nixpkgs/packages/rxvt-unicode/default.nix99
-rw-r--r--.config/nixpkgs/packages/scribus/default.nix71
-rw-r--r--.config/nixpkgs/packages/skeema/default.nix23
-rw-r--r--.config/nixpkgs/packages/sowon/package.nix (renamed from .config/nixpkgs/packages/sowon/default.nix)0
-rw-r--r--.config/nixpkgs/packages/sqldef/default.nix23
-rw-r--r--.config/nixpkgs/packages/stylelint/default.nix38
-rw-r--r--.config/nixpkgs/packages/systemd2nix/package.nix (renamed from .config/nixpkgs/packages/systemd2nix/default.nix)5
-rw-r--r--.config/nixpkgs/packages/tiemu/package.nix (renamed from .config/nixpkgs/packages/tiemu/default.nix)0
-rw-r--r--.config/nixpkgs/packages/tilp2/default.nix39
-rw-r--r--.config/nixpkgs/packages/validatornu/default.nix32
-rw-r--r--.config/nixpkgs/packages/wf-shell/package.nix32
-rw-r--r--.config/nixpkgs/packages/x11vnc/default.nix44
-rw-r--r--.config/nixpkgs/packages/xprintidle/default.nix26
-rw-r--r--.config/nixpkgs/packages/yaml2nix/package.nix (renamed from .config/nixpkgs/packages/yaml2nix/default.nix)0
-rw-r--r--.config/nixpkgs/packages/youtube-dl/default.nix36
-rw-r--r--.config/nixpkgs/shells/ansible.nix28
-rw-r--r--.config/nixpkgs/shells/ansible/shell.nix29
-rw-r--r--.config/nixpkgs/shells/bubblewrap/shell.nix36
-rw-r--r--.config/nixpkgs/shells/cake/shell.nix (renamed from .config/nixpkgs/shells/cake.nix)75
-rw-r--r--.config/nixpkgs/shells/coreboot/shell.nix (renamed from .config/nixpkgs/shells/coreboot.nix)0
-rw-r--r--.config/nixpkgs/shells/falcon/shell.nix (renamed from .config/nixpkgs/shells/falcon.nix)0
-rw-r--r--.config/nixpkgs/shells/firejail/shell.nix48
-rw-r--r--.config/nixpkgs/shells/larynx-server/shell.nix54
-rw-r--r--.config/nixpkgs/shells/larynx/shell.nix54
-rw-r--r--.config/nixpkgs/shells/mermaid-live-editor/shell.nix74
-rw-r--r--.config/nixpkgs/shells/nixops.nix27
-rw-r--r--.config/nixpkgs/shells/nsjail/shell.nix52
-rw-r--r--.config/nixpkgs/shells/planner/shell.nix68
-rw-r--r--.config/nixpkgs/shells/proot/shell.nix52
-rw-r--r--.config/nixpkgs/shells/pure/shell.nix22
-rw-r--r--.config/nixpkgs/shells/scribus/shell.nix96
-rw-r--r--.config/nixpkgs/shells/tilp2/shell.nix66
58 files changed, 1276 insertions, 986 deletions
diff --git a/.config/nixpkgs/config.nix b/.config/nixpkgs/config.nix
index 078c351..a95debd 100644
--- a/.config/nixpkgs/config.nix
+++ b/.config/nixpkgs/config.nix
@@ -2,13 +2,19 @@ let
pkgs = import <nixpkgs> { };
+ system = builtins.currentSystem;
+
+ previous = import (builtins.fetchTarball {
+ url = "https://releases.nixos.org/nixos/22.11/nixos-22.11.466.596a8e828c5/nixexprs.tar.xz";
+ sha256 = "1367bad5zz0mfm4czb6p0s0ni38f0x1ffh02z76rx4nranipqbgg"; }) { inherit system; };
+
stable = import (builtins.fetchTarball {
- url = "https://releases.nixos.org/nixos/21.11/nixos-21.11.336020.2128d0aa28e/nixexprs.tar.xz";
- sha256 = "0w8plbxms0di6gnh0k2yhj0pgxzxas7g5x0m01zjzixf16i2bapj"; }) {};
+ url = "https://releases.nixos.org/nixos/23.11/nixos-23.11.6510.a5e4bbcb4780/nixexprs.tar.xz";
+ sha256 = "0f73pbh4j89wgk7rn9xp0q8ybw15zkhw0prjz5r37aaryjs8hnbd"; }) { inherit system; };
unstable = import (builtins.fetchTarball {
- url = "https://releases.nixos.org/nixos/unstable/nixos-22.05pre353770.23d785aa6f8/nixexprs.tar.xz";
- sha256 = "1n50i34h3yj2a44x3gl2xk27z8r12lzgj2m8n5j1c4k6kh4z1b22"; }) {};
+ url = "https://releases.nixos.org/nixos/unstable/nixos-24.05pre615148.6143fc5eeb9c/nixexprs.tar.xz";
+ sha256 = "0bymwq04dxl3ljjjzw21aspdnwwfm56pqi218lg0vdwargy8yxm8"; }) { inherit system; };
in
@@ -25,9 +31,9 @@ in
Woodpecker = pkgs.buildEnv {
name = "woodpecker";
paths = [
- Terminal Graphical Xorg Awesome Fonts Audio LaTeX Dictionary
- Android JavaScript Python PHP Lua Elixir HTML Shell Haskell
- Perl Nix C Golang Rust CSS SQL YAML Ruby Nim Themes Emulators
+ Terminal Graphical Xorg Wayland Awesome Fonts Audio LaTeX Dictionary Android
+ JavaScript Python PHP Lua Elixir HTML Shell Haskell Perl Nix C Golang Rust CSS
+ SQL YAML HTTP Ruby Nim Themes Emulators Clojure Lisp
];
};
@@ -64,27 +70,33 @@ in
Terminal = pkgs.buildEnv {
name = "terminal";
paths = [
- (callPackage ./packages/chromexup/default.nix {})
- (callPackage ./packages/hugo/default.nix {})
- (callPackage ./packages/rxvt-unicode/default.nix {})
- (callPackage ./packages/systemd2nix/default.nix {})
- (callPackage ./packages/validatornu/default.nix {})
- (callPackage ./packages/youtube-dl/default.nix {})
- (unstable.pass.withExtensions (ext: with ext; [ pass-import pass-audit pass-otp ]))
- unstable.amfora
- unstable.emacs
- unstable.fzf
- unstable.quickemu
+ (callPackage ./packages/chromexup/package.nix { })
+ (callPackage ./packages/emacs-batch-indent/package.nix { })
+ (callPackage ./packages/pdf2htmlex/package.nix { })
+ (callPackage ./packages/systemd2nix/package.nix { })
+ (pass.withExtensions (ext: with ext; [ pass-import pass-audit pass-otp ]))
+ unstable.hugo
+ unstable.piper-tts
+ unstable.validator-nu
+ unstable.vimHugeX
+ unstable.yt-dlp
+ unstable.ios-webkit-debug-proxy
+ unstable.libimobiledevice
aerc
+ alacritty
alsaUtils
+ amfora
ansi2html
ansible
+ atftp
atool
bat
+ bind
bleachbit
- calcurse
cava
+ cloc
csvkit
+ curlftpfs
davmail
desktop-file-utils
diceware
@@ -92,23 +104,27 @@ in
docker-compose
dtrx
electrum
+ emacs
encfs
entr
- exercism
expect
+ fdupes
ffmpeg
flashrom
fortune
+ fzf
gettext
gifsicle
git
groff
+ hexedit
hexyl
highlight
ideviceinstaller
imagemagick
img2pdf
jpegoptim
+ jq
keychain
kjv
libqalculate
@@ -119,19 +135,26 @@ in
monolith
neofetch
netcat-openbsd
+ nethogs
newsboat
nnn
+ nodePackages.mermaid-cli
ocrmypdf
pandoc
- picotts
+ pdsh
pipes
+ plantuml
pngnq
pngquant
poppler_utils
+ pssh
+ quickemu
ranger
rclone
ripgrep
- sbcl
+ rxvt-unicode
+ s-tui
+ sfeed
silver-searcher
sshfs
subversion
@@ -139,19 +162,19 @@ in
tcl
tesseract
tmux
+ toipe
trash-cli
units
vale
- vault
vcal
ventoy-bin
- vimHugeX
vnstat
w3m
wavemon
weechat
woof
xdg-user-dirs
+ xterm
zbar
];
pathsToLink = [ "/etc" "/share" "/bin" ];
@@ -160,24 +183,21 @@ in
Graphical = pkgs.buildEnv {
name = "graphical";
paths = [
- (callPackage ./packages/beaker-browser/default.nix {})
- (callPackage ./packages/boomer/default.nix {})
- (callPackage ./packages/dmenu/default.nix {})
- (callPackage ./packages/gnaural/default.nix {})
- (callPackage ./packages/ntrviewer/default.nix {})
- (callPackage ./packages/planner/default.nix {})
- (callPackage ./packages/scribus/default.nix {})
- (callPackage ./packages/sowon/default.nix {})
- (callPackage ./packages/tilp2/default.nix {})
+ (callPackage ./packages/boomer/package.nix { })
+ (callPackage ./packages/dmenu/package.nix { })
+ (callPackage ./packages/rofi/package.nix { })
+ (callPackage ./packages/sowon/package.nix { })
(mplayer.override { v4lSupport = true; })
- unstable.claws-mail
- unstable.fsearch
- unstable.nyxt
+ previous.code-server
+ previous.qownnotes
+ previous.recoll
+ unstable.firefox
+ unstable.google-chrome
unstable.ungoogled-chromium
aegisub
anki
blender
- code-server
+ claws-mail
corrscope
dconf
diffpdf
@@ -185,15 +205,18 @@ in
evince
exiftool
feh
- firefox
flameshot
freerdp
+ fsearch
gImageReader
gcolor2
gimp
- google-chrome
+ gnaural
gparted
gromit-mpx
+ gst_all_1.gst-plugins-base
+ gst_all_1.gst-plugins-good
+ gst_all_1.gstreamer
i3lock-fancy
kcharselect
keepassxc
@@ -203,30 +226,25 @@ in
liferea
mate.engrampa
meld
- mupdf
+ mupdf_1_17
mypaint
- palemoon
pavucontrol
peek
- qownnotes
qrencode
- recoll
redshift
- rofi
scrcpy
screenkey
+ sent
sigil
skippy-xd
spaceFM
+ stalonetray
sublime3
sxiv
syncthing
- tabula
tigervnc
transmission-gtk
treesheets
- treesheets
- vimb
virt-manager
vlc
vscodium
@@ -241,7 +259,8 @@ in
Emulators = pkgs.buildEnv {
name = "emulators";
paths = [
- (callPackage ./packages/tiemu/default.nix {})
+ (callPackage ./packages/ntrviewer/package.nix { })
+ (callPackage ./packages/tiemu/package.nix { })
desmume
mgba
];
@@ -250,13 +269,11 @@ in
Xorg = pkgs.buildEnv {
name = "xorg";
paths = [
- (callPackage ./packages/x11vnc/default.nix {})
- (callPackage ./packages/xprintidle/default.nix {})
autocutsel
glxinfo
unclutter-xfixes
- weston
wmctrl
+ x11vnc
xbindkeys
xdotool
xorg.xauth
@@ -276,14 +293,26 @@ in
xorg.xrdb
xorg.xset
xorg.xsetroot
+ xprintidle
xsel
xzoom
];
};
+ Wayland = pkgs.buildEnv {
+ name = "wayland";
+ paths = [
+ (callPackage ./packages/wf-shell/package.nix { })
+ wayfire
+ weston
+ wev
+ wofi
+ ];
+ };
+
Awesome = pkgs.buildEnv {
name = "awesome";
- paths = [ awesome ];
+ paths = [ (callPackage ./packages/awesome/package.nix { }) ];
};
Xfce = pkgs.buildEnv {
@@ -314,7 +343,7 @@ in
Fonts = pkgs.buildEnv {
name = "fonts";
paths = [
- (callPackage ./packages/nerdfonts-dejavu-sans-mono/default.nix {})
+ (callPackage ./packages/nerdfonts-dejavu-sans-mono/package.nix { })
cm_unicode
cooper-hewitt
corefonts
@@ -325,10 +354,12 @@ in
fira-mono
font-awesome_4
ibm-plex
+ inter
noto-fonts
noto-fonts-cjk
noto-fonts-emoji
source-code-pro
+ source-sans-pro
source-serif-pro
yanone-kaffeesatz
];
@@ -337,11 +368,16 @@ in
Themes = pkgs.buildEnv {
name = "themes";
paths = [
+ glib
+ gnome.dconf-editor
+ gnome.gnome-themes-extra
gtk-engine-murrine
+ gtk3.dev
librsvg
lxappearance
papirus-icon-theme
- qt4
+ qt5ct
+ unstable.nwg-look
vanilla-dmz
];
};
@@ -349,10 +385,11 @@ in
Dictionary = pkgs.buildEnv {
name = "dictionary";
paths = [
- aspell
- aspellDicts.en
- aspellDicts.en-computers
- aspellDicts.en-science
+ (aspellWithDicts (dictionary: [
+ dictionary.en
+ dictionary.en-computers
+ dictionary.en-science
+ ]))
hunspell
hunspellDicts.en_US-large
hyphen
@@ -362,39 +399,45 @@ in
Audio = pkgs.buildEnv {
name = "audio";
- paths = [ pulseeffects-pw pulsemixer audacity ardour qjackctl ];
+ paths = [
+ (callPackage ./packages/qprompt/package.nix { })
+ ardour
+ pulsemixer
+ qjackctl
+ tenacity
+ ];
};
Design = pkgs.buildEnv {
name = "design";
- paths = [ freecadStable kicad ];
+ paths = [ kicad freecadStable openscad librecad ];
};
Android = pkgs.buildEnv {
name = "android";
paths = [
- (callPackage ./packages/edl/default.nix {})
- (callPackage ./packages/mkbootfs/default.nix {})
- (callPackage ./packages/mkbootimg/default.nix {})
+ (callPackage ./packages/mkbootfs/package.nix { })
+ (callPackage ./packages/mkbootimg/package.nix { })
+ edl
abootimg
];
};
LaTeX = pkgs.buildEnv {
name = "latex";
- paths = [ gummi texworks texlive.combined.scheme-full ];
+ paths = [ gummi texlive.combined.scheme-full previous.texworks ];
};
JavaScript = pkgs.buildEnv {
name = "javascript";
paths = [
- nodejs
unstable.deno
- nodePackages.bower2nix
+ unstable.swc
+ esbuild
nodePackages.eslint
nodePackages.jsonlint
- nodePackages.node2nix
nodePackages.prettier
+ nodejs
];
pathsToLink = [ "/bin" ];
};
@@ -402,25 +445,48 @@ in
Python = pkgs.buildEnv {
name = "python";
paths = [
- (python39.withPackages (ps: with ps; [ bandit black mypy pylint pyflakes flake8 pygments ]))
+ (python3.withPackages (ps: with ps; [
+ bandit
+ black
+ flake8
+ mypy
+ pyflakes
+ pygments
+ pylint
+ ]))
+ ruff
];
};
PHP = pkgs.buildEnv {
name = "php";
paths = [
- php
- phpPackages.psysh
- phpPackages.psalm
+ (php.buildEnv {
+ extensions = ({ enabled, all }: enabled ++ (with all; [ xdebug ]));
+ extraConfig = ''
+ xdebug.mode=develop,debug
+ xdebug.start_with_request=yes
+ '';
+ })
+ (callPackage ./packages/phar-composer/package.nix { })
+ graphviz
+ kcachegrind
+ phpPackages.composer
phpPackages.phpcbf
phpPackages.phpstan
- phpPackages.composer
+ phpPackages.psalm
+ phpPackages.psysh
];
};
Lua = pkgs.buildEnv {
name = "lua";
- paths = [ lua luaPackages.luacheck luaformatter ];
+ paths = [
+ (callPackage ./packages/redbean/package.nix { })
+ lua
+ luaPackages.luacheck
+ luaformatter
+ ];
};
Elixir = pkgs.buildEnv {
@@ -434,6 +500,7 @@ in
html-tidy
html-xml-utils
libxml2
+ libxslt
xmlstarlet
];
};
@@ -445,22 +512,27 @@ in
Haskell = pkgs.buildEnv {
name = "haskell";
- paths = [ ghc ghcid haskellPackages.hlint haskellPackages.brittany ];
+ paths = [ ghc ghcid haskellPackages.hlint previous.haskellPackages.brittany ];
+ };
+
+ Clojure = pkgs.buildEnv {
+ name = "clojure";
+ paths = [ clojure leiningen ];
};
Perl = pkgs.buildEnv {
name = "perl";
- paths = [ rakudo (perl.withPackages (ps: with ps; [ PerlCritic PerlTidy TextLorem ])) ];
+ paths = [ rakudo (perl.withPackages (ps: with ps; [ PerlCritic PerlTidy TextLorem LaTeXML ])) ];
};
Nix = pkgs.buildEnv {
name = "nix";
- paths = [ nixos-generators nix-index nix-linter nixfmt nixpkgs-fmt nixpkgs-lint ];
+ paths = [ nix-index previous.nix-linter nixfmt nixpkgs-fmt nixpkgs-lint ];
};
Ruby = pkgs.buildEnv {
name = "ruby";
- paths = [ (callPackage ./packages/rufo/default.nix {}) rubocop ruby ];
+ paths = [ rubocop ruby ];
};
C = pkgs.buildEnv {
@@ -470,7 +542,7 @@ in
Golang = pkgs.buildEnv {
name = "golang";
- paths = [ go unstable.gore ];
+ paths = [ go gore ];
};
Rust = pkgs.buildEnv {
@@ -483,11 +555,30 @@ in
paths = [ nim ];
};
+ Lisp = pkgs.buildEnv {
+ name = "lisp";
+ paths = [
+ (pkgs.writeScriptBin "guile" ''
+ export GUILE_LOAD_PATH="${pkgs.lib.concatStrings [
+ "${unstable.guile-gnutls}/share/guile/site/3.0:"
+ "$GUILE_LOAD_PATH"
+ ]}"
+ ${unstable.guile_3_0}/bin/guile "$@"
+ '')
+ sbcl
+ ];
+ };
+
+ HTTP = pkgs.buildEnv {
+ name = "http";
+ paths = [ caddy apacheHttpd httpie ];
+ };
+
CSS = pkgs.buildEnv {
name = "css";
paths = [
- (callPackage ./packages/csstidy/default.nix {})
- (callPackage ./packages/stylelint/default.nix {})
+ (previous.callPackage ./packages/csstidy/package.nix { })
+ nodePackages.stylelint
csslint
sassc
];
@@ -496,21 +587,21 @@ in
SQL = pkgs.buildEnv {
name = "sql";
paths = [
- (callPackage ./packages/skeema/default.nix {})
- (callPackage ./packages/sqldef/default.nix {})
pgformatter
+ skeema
sqlfluff
sqlint
sqlite
sqlitebrowser
+ unstable.sqldef
];
};
YAML = pkgs.buildEnv {
name = "yaml";
paths = [
- (callPackage ./packages/ruamel.yaml.cmd/default.nix {})
- (callPackage ./packages/yaml2nix/default.nix {})
+ (previous.callPackage ./packages/yaml2nix/package.nix { })
+ (callPackage ./packages/ruamel.yaml.cmd/package.nix { })
python39Packages.yamllint
yj
];
@@ -519,11 +610,10 @@ in
Xorg-Aarch64 = pkgs.buildEnv {
name = "xorg-aarch64";
paths = [
- (callPackage ./packages/x11vnc/default.nix {})
- (callPackage ./packages/xprintidle/default.nix {})
glxinfo
unclutter-xfixes
wmctrl
+ x11vnc
xbindkeys
xdotool
xorg.xauth
@@ -539,6 +629,7 @@ in
xorg.xrdb
xorg.xset
xorg.xsetroot
+ xprintidle
xsel
xzoom
];
@@ -570,16 +661,16 @@ in
Graphical-Aarch64 = pkgs.buildEnv {
name = "graphical-aarch64";
paths = [
- unstable.fsearch
+ unstable.firefox
+ unstable.ungoogled-chromium
audacity
- firefox
freerdp
+ fsearch
galculator
gpicview
pavucontrol
pcmanfm
sylpheed
- ungoogled-chromium
xsane
];
};
@@ -587,15 +678,15 @@ in
Terminal-Aarch64 = pkgs.buildEnv {
name = "terminal-aarch64";
paths = [
- unstable.fzf
+ unstable.vimHugeX
alsaUtils
+ fzf
libnotify
redshift
rofi
rxvt-unicode
skippy-xd
tigervnc
- vimHugeX
];
};
};
diff --git a/.config/nixpkgs/helpers/mkShellMinimal.nix b/.config/nixpkgs/helpers/mkShellMinimal.nix
deleted file mode 100644
index 54d0e68..0000000
--- a/.config/nixpkgs/helpers/mkShellMinimal.nix
+++ /dev/null
@@ -1,83 +0,0 @@
-### Source: https://github.com/NixOS/nixpkgs/commit/459771518d44f60b59a19381d07b12297908215d
-### Article: https://fzakaria.com/2021/08/02/a-minimal-nix-shell.html
-### Usage:
-
-# let
-#
-# name = "nix-shell.minimal";
-# pkgs = import <nixpkgs> { };
-#
-# mkShellMinimal = pkgs.callPackage (builtins.fetchurl {
-# url = "https://raw.githubusercontent.com/tdro/dotfiles/0aac4414559235f8cd8c454acce30c0471e0f6b1/.config/nixpkgs/helpers/mkShellMinimal.nix";
-# sha256 = "06vbyyhaam3nmzimzasz6la590ni9cbdql3jy29hhw9ln0xf09yy";
-# }) { };
-#
-# in mkShellMinimal {
-# buildInputs = [ pkgs.coreutils pkgs.hello pkgs.gnugrep pkgs.which ];
-# ENV = "ENV";
-# shellHook = ''
-# hello
-# printf "%s\n" "$ENV"
-# which mkdir
-# printf "\nPATH is $PATH\n\n"
-# grep --version
-# export PS1='\h (${name}) \W \$ '
-# '';
-# }
-
-{ lib }:
-
-{ packages ? [ ], inputsFrom ? [ ], buildInputs ? [ ], nativeBuildInputs ? [ ]
-, propagatedBuildInputs ? [ ], propagatedNativeBuildInputs ? [ ], ... }@attrs:
-let
- mergeInputs = name:
- (attrs.${name} or [ ]) ++ (lib.subtractLists inputsFrom
- (lib.flatten (lib.catAttrs name inputsFrom)));
-
- rest = builtins.removeAttrs attrs [
- "packages"
- "inputsFrom"
- "buildInputs"
- "nativeBuildInputs"
- "propagatedBuildInputs"
- "propagatedNativeBuildInputs"
- "shellHook"
- ];
-
- pkgs = import (builtins.fetchTarball {
- url = "https://releases.nixos.org/nixos/21.05/nixos-21.05.1510.a165aeceda9/nixexprs.tar.xz";
- sha256 = "124s05b0xk97arw0vvq8b4wcvsw6024dfdzwcx9qjxf3a2zszmam";
- }) { };
-
- stdenv = pkgs.stdenvNoCC.override {
- cc = null;
- preHook = "";
- allowedRequisites = null;
- initialPath = pkgs.coreutils;
- extraNativeBuildInputs = [ ];
- };
-
-in stdenv.mkDerivation ({
- name = "nix-shell";
- phases = [ "nobuildPhase" ];
-
- buildInputs = mergeInputs "buildInputs";
- nativeBuildInputs = packages ++ (mergeInputs "nativeBuildInputs");
- propagatedBuildInputs = mergeInputs "propagatedBuildInputs";
- propagatedNativeBuildInputs = mergeInputs "propagatedNativeBuildInputs";
-
- shellHook = ''
- PATH=${stdenv.initialPath}/bin
- for package in ${toString buildInputs}; do
- export PATH=$package/bin:$PATH
- done
- '' + lib.concatStringsSep "\n"
- (lib.catAttrs "shellHook" (lib.reverseList inputsFrom ++ [ attrs ]));
-
- nobuildPhase = ''
- echo
- echo "This derivation is not meant to be built, aborting";
- echo
- exit 1
- '';
-} // rest)
diff --git a/.config/nixpkgs/helpers/mkShellPure.nix b/.config/nixpkgs/helpers/mkShellPure.nix
deleted file mode 100644
index 8ffa941..0000000
--- a/.config/nixpkgs/helpers/mkShellPure.nix
+++ /dev/null
@@ -1,59 +0,0 @@
-### Experimental pure version of mkShellMinimal that clears all environment variables.
-### Derived Source: https://github.com/NixOS/nixpkgs/commit/459771518d44f60b59a19381d07b12297908215d
-### Article: https://fzakaria.com/2021/08/02/a-minimal-nix-shell.html
-### Usage:
-
-# let
-#
-# name = "nix-shell.pure";
-# pkgs = import <nixpkgs> { };
-#
-# mkShellPure = pkgs.callPackage (builtins.fetchurl {
-# url = "https://raw.githubusercontent.com/tdro/dotfiles/b710281b132056105709c03dda1899a6afc68a93/.config/nixpkgs/helpers/mkShellPure.nix";
-# sha256 = "1ciwifsx2hrp0ymm077zfb5q8ravrk545bda1q249y2spw9np4ms";
-# }) { };
-#
-# in mkShellPure {
-# packages = [ pkgs.hello pkgs.coreutils ];
-# shellHook = ''
-# export ENV=ENV
-# env
-# hello
-# export PS1='\h (${name}) \W \$ '
-# '';
-# }
-
-{ writeTextFile, writeScript, system }:
-
-{ shellHook ? "", packages ? [ ], ... }@attrs:
-derivation ({
- inherit system;
-
- name = "pure-nix-shell";
-
- "stdenv" = writeTextFile rec {
- name = "setup";
- executable = true;
- destination = "/${name}";
- text = ''
- set -e
- NEW_PATH=
- for package in ${toString packages}; do
- export NEW_PATH=$package/bin:$NEW_PATH
- done
- exec /usr/bin/env --ignore-environment /bin/sh -c "
- export PATH=$NEW_PATH
- ${shellHook}
- /bin/sh
- "
- '';
- };
-
- builder = writeScript "builder.sh" ''
- #!/bin/sh
- echo
- echo "This derivation is not meant to be built, unless you want to capture the dependency closure.";
- echo
- export > $out
- '';
-} // attrs)
diff --git a/.config/nixpkgs/packages/awesome/package.nix b/.config/nixpkgs/packages/awesome/package.nix
new file mode 100644
index 0000000..6bf06ee
--- /dev/null
+++ b/.config/nixpkgs/packages/awesome/package.nix
@@ -0,0 +1,98 @@
+{ lib, stdenv, fetchgit, lua, cairo, librsvg, cmake, imagemagick, pkg-config
+, gdk-pixbuf, xorg, libstartup_notification, libxdg_basedir, libpthreadstubs
+, xcb-util-cursor, makeWrapper, pango, gobject-introspection, which, dbus
+, nettools, git, doxygen, xmlto, docbook_xml_dtd_45, docbook_xsl
+, findXMLCatalogs, libxkbcommon, xcbutilxrm, hicolor-icon-theme, asciidoctor
+, gtk3, makeFontsConf, ghostscript }:
+
+let luaEnv = lua.withPackages (ps: [ ps.lgi ps.ldoc ]);
+
+in stdenv.mkDerivation rec {
+ pname = "awesome";
+ version = "d2dc428e567e378a3f534c4d748543413fc30172";
+
+ src = fetchgit {
+ rev = version;
+ url = "https://github.com/awesomeWM/awesome.git";
+ sha256 = "sha256-gViEIuDn9ygzVof8e5e7cqDVPNeKDzlXK8V8oYzUUgA=";
+ };
+
+ nativeBuildInputs = [
+ asciidoctor
+ cmake
+ docbook_xml_dtd_45
+ docbook_xsl
+ doxygen
+ findXMLCatalogs
+ imagemagick
+ makeWrapper
+ pkg-config
+ xmlto
+ ];
+
+ outputs = [ "out" "doc" ];
+
+ FONTCONFIG_FILE = makeFontsConf {
+ fontDirectories = [ "${ghostscript}/share/ghostscript/fonts" ];
+ };
+
+ propagatedUserEnvPkgs = [ hicolor-icon-theme ];
+
+ buildInputs = [
+ cairo
+ dbus
+ gdk-pixbuf
+ git
+ gobject-introspection
+ gtk3
+ libpthreadstubs
+ librsvg
+ libstartup_notification
+ libxdg_basedir
+ libxkbcommon
+ lua
+ luaEnv
+ nettools
+ pango
+ xcb-util-cursor
+ xcbutilxrm
+ xorg.libXau
+ xorg.libXdmcp
+ xorg.libxcb
+ xorg.libxshmfence
+ xorg.xcbutil
+ xorg.xcbutilimage
+ xorg.xcbutilkeysyms
+ xorg.xcbutilrenderutil
+ xorg.xcbutilwm
+ ];
+
+ cmakeFlags = [ "-DOVERRIDE_VERSION=${version}" ]
+ ++ lib.optional lua.pkgs.isLuaJIT
+ "-DLUA_LIBRARY=${lua}/lib/libluajit-5.1.so";
+
+ GI_TYPELIB_PATH = "${pango.out}/lib/girepository-1.0";
+ LUA_CPATH = "${luaEnv}/lib/lua/${lua.luaversion}/?.so";
+ LUA_PATH = "${luaEnv}/share/lua/${lua.luaversion}/?.lua;;";
+
+ postInstall = ''
+ mv "$out/bin/awesome" "$out/bin/.awesome-wrapped"
+ makeWrapper "$out/bin/.awesome-wrapped" "$out/bin/awesome" \
+ --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
+ --add-flags '--search ${luaEnv}/lib/lua/${lua.luaversion}' \
+ --add-flags '--search ${luaEnv}/share/lua/${lua.luaversion}' \
+ --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH"
+
+ wrapProgram $out/bin/awesome-client \
+ --prefix PATH : "${which}/bin"
+ '';
+
+ passthru = { inherit lua; };
+
+ meta = with lib; {
+ license = licenses.gpl2Plus;
+ platforms = platforms.linux;
+ homepage = "https://awesomewm.org/";
+ description = "Highly configurable, dynamic window manager for X";
+ };
+}
diff --git a/.config/nixpkgs/packages/beaker-browser/default.nix b/.config/nixpkgs/packages/beaker-browser/default.nix
deleted file mode 100644
index 9de96db..0000000
--- a/.config/nixpkgs/packages/beaker-browser/default.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{ lib, fetchurl, appimageTools }:
-
-let version = "1.1.0"; in
-
-appimageTools.wrapType2 {
- name = "beaker-browser";
-
- src = fetchurl {
- url = "https://github.com/beakerbrowser/beaker/releases/download/${version}/Beaker.Browser-${version}.AppImage";
- sha256 = "07hcyr6vyim8vrvw120v5jjfvy5jkcaqc3wgqgyf6prbqdx71dkp";
- };
-
- meta = with lib; {
- homepage = "https://beakerbrowser.com";
- license = licenses.mit;
- description = "An experimental peer-to-peer Web browser";
- };
-}
diff --git a/.config/nixpkgs/packages/boomer/default.nix b/.config/nixpkgs/packages/boomer/package.nix
index 66e1c58..885de27 100644
--- a/.config/nixpkgs/packages/boomer/default.nix
+++ b/.config/nixpkgs/packages/boomer/package.nix
@@ -1,17 +1,15 @@
-{ lib, stdenv, fetchFromGitHub, makeWrapper, nim, libX11, libXrandr, libGL }:
+{ lib, stdenv, fetchgit, makeWrapper, nim, libX11, libXrandr, libGL }:
let
- x11-nim = fetchFromGitHub {
- repo = "x11";
- owner = "nim-lang";
+ x11-nim = fetchgit {
+ url = "https://github.com/nim-lang/x11";
rev = "b7bae7dffa4e3f12370d5a18209359422ae8bedd";
sha256 = "1j3kyp0vf2jl20c67gcm759jnfskdf0wc4ajrdbvfxias285c5sb";
};
- opengl-nim = fetchFromGitHub {
- repo = "opengl";
- owner = "nim-lang";
+ opengl-nim = fetchgit {
+ url = "https://github.com/nim-lang/opengl";
rev = "a6fb649e5bd94d8420d4a11287092a4dc3e922b4";
sha256 = "0w62lfrdms2vb24kd4jnypwmqvdk5x9my1dinnqdq82yl4nz6d0s";
};
@@ -19,12 +17,12 @@ let
in stdenv.mkDerivation rec {
pname = "boomer";
- version = "d16c65ce3eae31f4c77de1585b340d8d624c1252";
- src = fetchFromGitHub {
- owner = "tsoding";
- repo = "boomer";
+ version = "cc0f5311193da8361ee782a421d6bc4ad8541cf3";
+
+ src = fetchgit {
+ url = "https://github.com/tsoding/boomer";
rev = version;
- sha256 = "1kqfg2i5p1zrvl9jx0ig7f0ckxnaxi9svr0bs52aavwydldnnl8d";
+ sha256 = "sha256-3yg0nuJE0Rrw13VEQ/CjjjPN5G4ytssgiesdXwlHaF8=";
};
buildInputs = [ nim libX11 libXrandr libGL makeWrapper ];
@@ -44,9 +42,7 @@ in stdenv.mkDerivation rec {
fixupPhase = ''
runHook preFixup
- patchelf --set-rpath ${
- lib.makeLibraryPath [ stdenv.cc.cc libX11 libXrandr libGL ]
- } $out/bin/boomer
+ patchelf --set-rpath ${lib.makeLibraryPath [ stdenv.cc.cc libX11 libXrandr libGL ]} $out/bin/boomer
wrapProgram "$out/bin/boomer" --set LIBGL_ALWAYS_SOFTWARE 1
runHook postFixup
'';
diff --git a/.config/nixpkgs/packages/chromexup/default.nix b/.config/nixpkgs/packages/chromexup/package.nix
index c6c4622..c6c4622 100644
--- a/.config/nixpkgs/packages/chromexup/default.nix
+++ b/.config/nixpkgs/packages/chromexup/package.nix
diff --git a/.config/nixpkgs/packages/csstidy/default.nix b/.config/nixpkgs/packages/csstidy/package.nix
index a20123a..5ccf7ff 100644
--- a/.config/nixpkgs/packages/csstidy/default.nix
+++ b/.config/nixpkgs/packages/csstidy/package.nix
@@ -14,12 +14,14 @@ stdenv.mkDerivation rec {
buildInputs = [ sconsPackages.scons_3_0_1 ];
preBuild = ''
- sed -i "/env = Environment()/a env.Replace(CXX='${gcc}/bin/g++')" SConstruct
+ sed --in-place "/env = Environment()/a env.Replace(CXX='${gcc}/bin/g++')" SConstruct
'';
installPhase = ''
- mkdir -p $out/bin
+ runHook preInstall
+ mkdir --parents $out/bin
cp release/csstidy/csstidy $out/bin
+ runHook postInstall
'';
meta = with lib; {
diff --git a/.config/nixpkgs/packages/dmenu/default.nix b/.config/nixpkgs/packages/dmenu/package.nix
index 496929f..f0f933c 100644
--- a/.config/nixpkgs/packages/dmenu/default.nix
+++ b/.config/nixpkgs/packages/dmenu/package.nix
@@ -27,7 +27,6 @@ stdenv.mkDerivation rec {
license = lib.licenses.mit;
platforms = lib.platforms.all;
homepage = "https://tools.suckless.org/dmenu";
- maintainers = with lib.maintainers; [ pSub globin ];
description = "A generic, highly customizable, and efficient menu for the X Window System";
};
}
diff --git a/.config/nixpkgs/packages/edl/default.nix b/.config/nixpkgs/packages/edl/default.nix
deleted file mode 100644
index a9dba83..0000000
--- a/.config/nixpkgs/packages/edl/default.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-{ lib, fetchgit, python38 }:
-
-python38.pkgs.buildPythonApplication rec {
-
- pname = "edl";
- url = "https://github.com/bkerler/edl.git";
- version = "6ca9feb8ac7b260a0395d4f51e9e91fc0feda058";
-
- src = fetchgit {
- inherit url;
- rev = version;
- sha256 = "1lpgamg6wkwpj3mxcn8nrxxw90svx5xy3kahk8rdf09ph6wlii4x";
- };
-
- doCheck = false;
- dontBuild = true;
-
- propagatedBuildInputs = with python38.pkgs; [
- pyusb
- pyserial
- docopt
- pycryptodome
- qrcode
- ];
-
- pythonEnv = python38.withPackages (ps: with ps; propagatedBuildInputs);
-
- installPhase = ''
- mkdir -p $out/share/edl
- cp -rT ${src} $out/share/edl
- makeWrapper ${pythonEnv}/bin/python $out/bin/edl --add-flags $out/share/edl/edl.py
- makeWrapper ${pythonEnv}/bin/python $out/bin/edl-diag --add-flags $out/share/edl/diag.py
- makeWrapper ${pythonEnv}/bin/python $out/bin/edl-tcpclient --add-flags $out/share/edl/tcpclient.py
- makeWrapper ${pythonEnv}/bin/python $out/bin/edl-fhloaderparse --add-flags $out/share/edl/fhloaderparse.py
- '';
-
- meta = with lib; {
- homepage = url;
- license = licenses.mit;
- platforms = platforms.linux;
- description = "QC Firehose / Sahara Client / QC Diag Tools :)";
- };
-}
diff --git a/.config/nixpkgs/packages/emacs-batch-indent/package.nix b/.config/nixpkgs/packages/emacs-batch-indent/package.nix
new file mode 100644
index 0000000..92042af
--- /dev/null
+++ b/.config/nixpkgs/packages/emacs-batch-indent/package.nix
@@ -0,0 +1,30 @@
+{ lib, stdenv, fetchgit }:
+
+stdenv.mkDerivation rec {
+
+ name = "emacs-batch-indent";
+ version = "145e8771b9709a82e3df82cdc06c6d9505de905d";
+ url = "https://github.com/cwfoo/emacs-batch-indent";
+
+ src = fetchgit {
+ inherit url;
+ rev = version;
+ sha256 = "sha256-Qqg/ZLbfTZnH2aO7ZW2XiiVBqEvK2+LMo2Kz6HSnOCE=";
+ };
+
+ phases = [ "unpackPhase" "installPhase" ];
+
+ installPhase = ''
+ runHook preInstall
+ mkdir --parents $out/bin
+ cp emacs-batch-indent $out/bin
+ runHook postInstall
+ '';
+
+ meta = with lib; {
+ homepage = url;
+ license = licenses.gpl3;
+ platforms = platforms.linux;
+ description = "Indent Common Lisp, Emacs Lisp, and Scheme from the command line using Emacs.";
+ };
+}
diff --git a/.config/nixpkgs/packages/gnaural/default.nix b/.config/nixpkgs/packages/gnaural/default.nix
deleted file mode 100644
index e4a3849..0000000
--- a/.config/nixpkgs/packages/gnaural/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ lib, stdenv, fetchurl, portaudio, libsndfile, pkg-config, gtk2, gcc48 }:
-
-stdenv.mkDerivation rec {
-
- pname = "gnaural";
- version = "20110606";
-
- src = fetchurl {
- url = "https://iweb.dl.sourceforge.net/project/gnaural/Gnaural/gnaural_${version}.tar.xz";
- sha256 = "1gq519c0imsh57zklyi0f8h64l3ai48lh672c834470z8c6kvbfi";
- };
-
- patches = [
- (fetchurl {
- name = "gnaural.patch";
- url = "https://aur.archlinux.org/cgit/aur.git/plain/gnaural.patch?h=gnaural";
- sha256 = "15bplxcvjml8cz7pi2fwb444fpp7ypsh279642v8s9hgl3i3jvsz";
- })
- ];
-
- buildInputs = [ gcc48 portaudio pkg-config gtk2 libsndfile ];
-
- meta = with lib; {
- license = licenses.gpl2;
- platforms = platforms.linux;
- homepage = "http://gnaural.sourceforge.net/";
- description = "Auditory binaural-beat generator";
- };
-}
diff --git a/.config/nixpkgs/packages/hugo/default.nix b/.config/nixpkgs/packages/hugo/default.nix
deleted file mode 100644
index 446d396..0000000
--- a/.config/nixpkgs/packages/hugo/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib, buildGoModule, fetchgit, installShellFiles }:
-
-buildGoModule rec {
- pname = "hugo";
- version = "0.94.2";
-
- src = fetchgit {
- rev = "v${version}";
- url = "https://github.com/gohugoio/hugo.git";
- sha256 = "1pdahyw0addlyl1nq6igbnrvwbkqriy7w1nwhkiz0apj2gi70l3w";
- };
-
- doCheck = false;
- proxyVendor = true;
- vendorSha256 = "1jnmnm43w109jv3rhfchnqsq0k0lv59frddjns0axpac7vd5zjpb";
-
- tags = [ "extended" ];
- subPackages = [ "." ];
- nativeBuildInputs = [ installShellFiles ];
-
- postInstall = ''
- $out/bin/hugo gen man
- installManPage man/*
- '';
-
- meta = {
- license = lib.licenses.asl20;
- homepage = "https://gohugo.io";
- description = "A fast and modern static website engine";
- maintainers = with lib.maintainers; [ schneefux Br1ght0ne Frostman ];
- };
-}
diff --git a/.config/nixpkgs/packages/mkbootfs/default.nix b/.config/nixpkgs/packages/mkbootfs/package.nix
index b8c6050..b8c6050 100644
--- a/.config/nixpkgs/packages/mkbootfs/default.nix
+++ b/.config/nixpkgs/packages/mkbootfs/package.nix
diff --git a/.config/nixpkgs/packages/mkbootimg/default.nix b/.config/nixpkgs/packages/mkbootimg/package.nix
index 738fd33..738fd33 100644
--- a/.config/nixpkgs/packages/mkbootimg/default.nix
+++ b/.config/nixpkgs/packages/mkbootimg/package.nix
diff --git a/.config/nixpkgs/packages/nerdfonts-dejavu-sans-mono/default.nix b/.config/nixpkgs/packages/nerdfonts-dejavu-sans-mono/package.nix
index 36f03ed..866a6af 100644
--- a/.config/nixpkgs/packages/nerdfonts-dejavu-sans-mono/default.nix
+++ b/.config/nixpkgs/packages/nerdfonts-dejavu-sans-mono/package.nix
@@ -4,7 +4,6 @@ stdenv.mkDerivation rec {
pname = "nerdfonts-dejavu-sans-mono";
version = "2.1.0";
-
buildInputs = [ unzip ];
src = fetchurl {
@@ -13,23 +12,18 @@ stdenv.mkDerivation rec {
};
phases = [ "unpackPhase" "installPhase" ];
-
unpackPhase = '' unzip ${src} '';
installPhase = ''
- mkdir -p $out/share/fonts/nerdfonts-dejavu-sans-mono
- cp -r * $out/share/fonts/nerdfonts-dejavu-sans-mono
+ runHook preInstall
+ mkdir --parents $out/share/fonts/nerdfonts-dejavu-sans-mono
+ cp --recursive * $out/share/fonts/nerdfonts-dejavu-sans-mono
+ runHook postInstall
'';
meta = with lib; {
- description = ''
- Nerd Fonts is a project that attempts to patch as many developer targeted
- and/or used fonts as possible. The patch is to specifically add a high
- number of additional glyphs from popular 'iconic fonts' such as Font
- Awesome, Devicons, Octicons, and others.
- '';
- homepage = "https://github.com/ryanoasis/nerd-fonts";
license = licenses.mit;
platforms = platforms.all;
+ homepage = "https://github.com/ryanoasis/nerd-fonts";
};
}
diff --git a/.config/nixpkgs/packages/nixpkgs.lib/package.nix b/.config/nixpkgs/packages/nixpkgs.lib/package.nix
new file mode 100644
index 0000000..6f5c4e8
--- /dev/null
+++ b/.config/nixpkgs/packages/nixpkgs.lib/package.nix
@@ -0,0 +1,59 @@
+{ lib, stdenv, fetchgit, writeTextFile }:
+
+stdenv.mkDerivation rec {
+
+ pname = "nixpkgs.lib";
+ version = "f9d58ee370835f4c658cd0a62e8def4bda8b1f32";
+
+ src = fetchgit {
+ url = "https://github.com/nix-community/nixpkgs.lib.git";
+ sha256 = "sha256-KnumcE6UuNQPapsr32KjcRVDVuRGWB5PnAczHoo9nJc=";
+ rev = version;
+ };
+
+ installPhase = ''
+ runHook preInstall
+ mkdir --parents $out
+ cp --recursive --no-target-directory $src $out
+ runHook postInstall
+ '';
+
+ patches = [
+ (writeTextFile {
+ name = "remove-nonexistent-external-calls.patch";
+ text = ''
+ --- a/lib/default.nix
+ +++ b/lib/default.nix
+ @@ -24,8 +24,8 @@ let
+ # packaging
+ customisation = callLibs ./customisation.nix;
+ derivations = callLibs ./derivations.nix;
+ - maintainers = import ../maintainers/maintainer-list.nix;
+ - teams = callLibs ../maintainers/team-list.nix;
+ + maintainers = { };
+ + teams = { };
+ meta = callLibs ./meta.nix;
+ sources = callLibs ./sources.nix;
+ versions = callLibs ./versions.nix;
+ diff --git a/lib/trivial.nix b/lib/trivial.nix
+ index 5d4fad8..d679563 100644
+ --- a/lib/trivial.nix
+ +++ b/lib/trivial.nix
+ @@ -164,7 +164,7 @@ rec {
+ version = release + versionSuffix;
+
+ /* Returns the current nixpkgs release number as string. */
+ - release = lib.strings.fileContents ../.version;
+ + release = "";
+
+ /* The latest release that is supported, at the time of release branch-off,
+ if applicable.
+ '';
+ })
+ ];
+
+ meta = with lib; {
+ description = "nixpkgs lib for cheap instantiation ";
+ homepage = "https://github.com/nix-community/nixpkgs.lib";
+ };
+}
diff --git a/.config/nixpkgs/packages/ntrviewer/default.nix b/.config/nixpkgs/packages/ntrviewer/package.nix
index af155bf..af155bf 100644
--- a/.config/nixpkgs/packages/ntrviewer/default.nix
+++ b/.config/nixpkgs/packages/ntrviewer/package.nix
diff --git a/.config/nixpkgs/packages/pdf2htmlex/package.nix b/.config/nixpkgs/packages/pdf2htmlex/package.nix
new file mode 100644
index 0000000..82021ef
--- /dev/null
+++ b/.config/nixpkgs/packages/pdf2htmlex/package.nix
@@ -0,0 +1,17 @@
+{ lib, fetchurl, appimageTools }:
+
+appimageTools.wrapType2 rec {
+ name = "pdf2htmlex";
+ version = "0.18.8.rc1";
+
+ src = fetchurl {
+ url = "https://github.com/pdf2htmlEX/pdf2htmlEX/releases/download/v${version}/pdf2htmlEX-${version}-master-20200630-Ubuntu-focal-x86_64.AppImage";
+ sha256 = "sha256-Ed4lg6Orzl8UH9f6+x/qLGexWIblRta3Z1xgABLmq4w=";
+ };
+
+ meta = with lib; {
+ license = licenses.gpl3;
+ platforms = platforms.linux;
+ description = "Convert PDF to HTML without losing text or format. ";
+ };
+}
diff --git a/.config/nixpkgs/packages/phar-composer/package.nix b/.config/nixpkgs/packages/phar-composer/package.nix
new file mode 100644
index 0000000..79ee71b
--- /dev/null
+++ b/.config/nixpkgs/packages/phar-composer/package.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, makeWrapper, lib, php }:
+
+stdenv.mkDerivation rec {
+
+ pname = "phar-composer";
+ version = "1.4.0";
+
+ src = fetchurl {
+ url = "https://github.com/clue/${pname}/releases/download/v${version}/${pname}-${version}.phar";
+ sha256 = "sha256-GUKo/l8b0UkQpGHsyagjgtAkZbfmjdhWOXkZT5vLB8A=";
+ };
+
+ dontUnpack = true;
+ nativeBuildInputs = [ makeWrapper ];
+
+ installPhase = ''
+ runHook preInstall
+ mkdir --parents $out/bin
+ install -D $src $out/libexec/${pname}/${pname}.phar
+ makeWrapper ${php}/bin/php $out/bin/${pname} --add-flags "$out/libexec/${pname}/${pname}.phar"
+ runHook postInstall
+ '';
+
+ meta = {
+ license = lib.licenses.mit;
+ homepage = "https://github.com/clue/phar-composer#readme";
+ description = "Simple phar creation for every PHP project managed via Composer.";
+ };
+}
diff --git a/.config/nixpkgs/packages/planner/default.nix b/.config/nixpkgs/packages/planner/default.nix
deleted file mode 100644
index 9921372..0000000
--- a/.config/nixpkgs/packages/planner/default.nix
+++ /dev/null
@@ -1,48 +0,0 @@
-{ lib, stdenvNoCC, fetchgit, pkgconfig, intltool, automake111x, autoconf
-, libtool, gnome2, libxslt, python2, gcc48 }:
-
-stdenvNoCC.mkDerivation rec {
-
- pname = "planner";
- version = "de43d655f9f8103993129cde9de3d0e080d0546c";
-
- src = fetchgit {
- url = "https://gitlab.gnome.org/World/planner.git";
- sha256 = "1zpcswdpcjhllk7phy3z1zyxcgqr4pp0vf5fgpg5f3gqpk4xvwyg";
- rev = version;
- };
-
- nativeBuildInputs = with gnome2; [
- autoconf
- automake111x
- gnome-common
- gtk-doc
- intltool
- libtool
- pkgconfig
- scrollkeeper
- ];
-
- buildInputs = with gnome2; [
- GConf
- gcc48
- gtk
- libglade
- libgnomecanvas
- libgnomeui
- libxslt
- python2.pkgs.pygtk
- ];
-
- enableParallelBuilding = true;
- preConfigure = "./autogen.sh";
- makeFlags = [ "CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS" ];
- configureFlags = [ "--enable-python" "--enable-python-plugin" ];
-
- meta = with lib; {
- description = "Project management application for GNOME";
- homepage = "https://wiki.gnome.org/Apps/Planner";
- license = licenses.gpl2Plus;
- platforms = platforms.all;
- };
-}
diff --git a/.config/nixpkgs/packages/qprompt/package.nix b/.config/nixpkgs/packages/qprompt/package.nix
new file mode 100644
index 0000000..67a4c83
--- /dev/null
+++ b/.config/nixpkgs/packages/qprompt/package.nix
@@ -0,0 +1,30 @@
+{ lib, stdenv, fetchgit, cmake, extra-cmake-modules, qt5, libsForQt5 }:
+
+stdenv.mkDerivation rec {
+ name = "qprompt";
+ version = "v1.1.2";
+
+ src = fetchgit {
+ rev = version;
+ url = "https://github.com/Cuperino/QPrompt.git";
+ sha256 = "sha256-EeLJC77X9lcjvbr+TkIpMHO0YFdI91tiVUplde3wEzA=";
+ };
+
+ buildInputs = [
+ cmake
+ extra-cmake-modules
+ qt5.wrapQtAppsHook
+ qt5.qtquickcontrols2.dev
+ qt5.qtx11extras.dev
+ libsForQt5.ki18n.dev
+ libsForQt5.kcoreaddons.dev
+ libsForQt5.kiconthemes.dev
+ libsForQt5.kirigami2.dev
+ ];
+
+ meta = {
+ license = with lib.licenses; [ gpl3 cc-by-sa-40 ];
+ homepage = "https://github.com/Cuperino/QPrompt#qprompt";
+ description = "Personal teleprompter software for all video creators.";
+ };
+}
diff --git a/.config/nixpkgs/packages/redbean/package.nix b/.config/nixpkgs/packages/redbean/package.nix
new file mode 100644
index 0000000..7ede4c6
--- /dev/null
+++ b/.config/nixpkgs/packages/redbean/package.nix
@@ -0,0 +1,29 @@
+{ lib, stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+
+ pname = "redbean";
+ version = "2.0.1";
+
+ src = fetchurl {
+ url = "https://redbean.dev/redbean-${version}.com";
+ sha256 = "sha256-W5GpecQdDwawkrkmENxSqCz40PkyrLh34FtiUwD7Kzk=";
+ };
+
+ dontFixup = true;
+ dontUnpack = true;
+
+ installPhase = ''
+ runHook preInstall
+ mkdir --parents $out/bin
+ cp ${src} $out/bin/${pname}.com
+ chmod +x $out/bin/${pname}.com
+ runHook postInstall
+ '';
+
+ meta = with lib; {
+ license = licenses.isc;
+ platforms = platforms.all;
+ homepage = "https://github.com/jart/cosmopolitan";
+ };
+}
diff --git a/.config/nixpkgs/packages/rofi/package.nix b/.config/nixpkgs/packages/rofi/package.nix
new file mode 100644
index 0000000..420d2d2
--- /dev/null
+++ b/.config/nixpkgs/packages/rofi/package.nix
@@ -0,0 +1,49 @@
+{ stdenv, lib, fetchgit, autoreconfHook, pkg-config, libxkbcommon, pango
+, which, git, cairo, libxcb, xcbutil, xcbutilwm, xcbutilxrm, xcb-util-cursor
+, libstartup_notification, bison, flex, librsvg, check }:
+
+stdenv.mkDerivation rec {
+ pname = "rofi-unwrapped";
+ version = "1.7.0";
+
+ src = fetchgit {
+ rev = version;
+ fetchSubmodules = true;
+ url = "https://github.com/davatorium/rofi.git";
+ sha256 = "03wdy56b3g8p2czb0qydrddyyhj3x037pirnhyqr5qbfczb9a63v";
+ };
+
+ preConfigure = ''
+ patchShebangs "script"
+ # root not present in build /etc/passwd
+ sed -i 's/~root/~nobody/g' test/helper-expand.c
+ '';
+
+ nativeBuildInputs = [ autoreconfHook pkg-config ];
+ buildInputs = [
+ libxkbcommon
+ pango
+ cairo
+ git
+ bison
+ flex
+ librsvg
+ check
+ libstartup_notification
+ libxcb
+ xcbutil
+ xcbutilwm
+ xcbutilxrm
+ xcb-util-cursor
+ which
+ ];
+
+ doCheck = false;
+
+ meta = with lib; {
+ license = licenses.mit;
+ platforms = with platforms; linux;
+ homepage = "https://github.com/davatorium/rofi";
+ description = "Window switcher, run dialog and dmenu replacement";
+ };
+}
diff --git a/.config/nixpkgs/packages/ruamel.yaml.cmd/default.nix b/.config/nixpkgs/packages/ruamel.yaml.cmd/package.nix
index 6f6bacc..362b4bd 100644
--- a/.config/nixpkgs/packages/ruamel.yaml.cmd/default.nix
+++ b/.config/nixpkgs/packages/ruamel.yaml.cmd/package.nix
@@ -71,14 +71,15 @@ in python39.pkgs.buildPythonApplication rec {
installPhase = ''
runHook preInstall
- mkdir -p $out/bin
+ mkdir --parents $out/bin
cp ${ruamel.yaml.cmd}/bin/yaml $out/bin
- sed -i 's|^#!.*$|#!${pythonEnvironment}/bin/python|' $out/bin/yaml
+ sed --in-place 's|^#!.*$|#!${pythonEnvironment}/bin/python|' $out/bin/yaml
runHook postInstall
'';
dontUnpack = true;
dontBuild = true;
doCheck = false;
+ format = "other";
inherit meta;
}
diff --git a/.config/nixpkgs/packages/rufo/default.nix b/.config/nixpkgs/packages/rufo/default.nix
deleted file mode 100644
index 7d0a539..0000000
--- a/.config/nixpkgs/packages/rufo/default.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ buildRubyGem, fetchgit, lib, ruby, git }:
-
-buildRubyGem rec {
-
- inherit ruby;
- gemName = "rufo";
- name = "${gemName}-${version}";
- version = "b3f3aedf759d792761ad52e6bddb9ed51ffc6731";
-
- src = fetchgit {
- rev = version;
- url = "https://github.com/ruby-formatter/rufo.git";
- sha256 = "1z87ivd8xpm3ggbcv3sjr4c0ws6733yfh8l6xg5f0km6ax7s8h1j";
- };
-
- buildInputs = [ git ruby ];
-
- preBuild = ''
- rm spec/fixtures/file_finder/only_gemfiles/a.gemspec
- '';
-
- preFixup = ''
- cp exe/rufo $out/bin/rufo
- cp -rT lib $out/lib
- '';
-
- meta = with lib; {
- inherit version;
- license = licenses.mit;
- description = "The Ruby Formatter";
- homepage = "https://github.com/ruby-formatter/rufo";
- };
-}
diff --git a/.config/nixpkgs/packages/rxvt-unicode/default.nix b/.config/nixpkgs/packages/rxvt-unicode/default.nix
deleted file mode 100644
index 24c9afb..0000000
--- a/.config/nixpkgs/packages/rxvt-unicode/default.nix
+++ /dev/null
@@ -1,99 +0,0 @@
-{ lib, stdenv, fetchurl, fetchpatch, makeDesktopItem, libX11, libXt, libXft
-, libXrender, ncurses, fontconfig, freetype, pkg-config, gdk-pixbuf, perl }:
-
-let
- pname = "rxvt-unicode";
- version = "9.26";
- description = "A clone of the well-known terminal emulator rxvt";
-
- desktopItem = makeDesktopItem {
- name = pname;
- exec = "urxvt";
- genericName = pname;
- comment = description;
- desktopName = "URxvt";
- icon = "utilities-terminal";
- categories = "System;TerminalEmulator;";
- };
-
-in stdenv.mkDerivation {
-
- inherit pname version;
- name = "${pname}-unwrapped-${version}";
-
- src = fetchurl {
- url = "http://dist.schmorp.de/rxvt-unicode/Attic/rxvt-unicode-${version}.tar.bz2";
- sha256 = "12y9p32q0v7n7rhjla0j2g9d5rj2dmwk20c9yhlssaaxlawiccb4";
- };
-
- buildInputs = [
- fontconfig
- freetype
- gdk-pixbuf
- libX11
- libXft
- libXrender
- libXt
- ncurses
- perl
- pkg-config
- ];
-
- outputs = [ "out" "terminfo" ];
-
- patches = [
- (fetchpatch {
- name = "enable-wide-glyphs.patch";
- url = "https://raw.githubusercontent.com/owl4ce/nelumbonaceae/e6be9823ec9ab7c14a23f5a25dfb33ce705d9950/x11-terms/rxvt-unicode/files/enable-wide-glyphs.patch";
- sha256 = "0vfpidysc1kxr3zark2y1b8fxx7k2lck79ccb7b97mgz04mxchvd";
- })
- (fetchpatch {
- name = "improve-font-rendering.patch";
- url = "https://raw.githubusercontent.com/owl4ce/nelumbonaceae/e6be9823ec9ab7c14a23f5a25dfb33ce705d9950/x11-terms/rxvt-unicode/files/improve-font-rendering.patch";
- sha256 = "0xkwvn204n679v4mgpw2dl4c30pdl622l6b2iw6sr0gijga8zqcd";
- })
- (fetchpatch {
- name = "256-color-resources.patch";
- url = "https://raw.githubusercontent.com/NixOS/nixpkgs/2bb3a9da24ca60d9f5bed69f679a1ec50dbdf997/pkgs/applications/terminal-emulators/rxvt-unicode/patches/256-color-resources.patch";
- sha256 = "00yw67faybglypnvz59k7m3cp5bvdwaiq0771zfi1x7drz3xfql6";
- })
- (fetchpatch {
- name = "fixed-layout-size.patch";
- url = "https://raw.githubusercontent.com/owl4ce/nelumbonaceae/b593a0eb7bb45a0b471c2ee2aa02b0e66776b9c0/x11-terms/rxvt-unicode/files/fixed-layout-size.patch";
- sha256 = "148vpln61zs3qv4sipcc5c7fiyc4d4q6k10r7bpr0k0q4pzshljh";
- })
- ];
-
- configureFlags = [
- "--enable-perl"
- "--enable-unicode3"
- "--enable-256-color"
- "--enable-wide-glyphs"
- "--with-terminfo=$terminfo/share/terminfo"
- ];
-
- CFLAGS = [ "-I${freetype.dev}/include/freetype2" ];
- LDFLAGS = [ "-lfontconfig" "-lXrender" "-lpthread" ];
-
- preConfigure = ''
- mkdir -p $terminfo/share/terminfo
- export TERMINFO=$terminfo/share/terminfo
- mkdir -p $out/$(dirname ${perl.libPrefix})
- ln -s $out/lib/urxvt $out/${perl.libPrefix}
- '';
-
- postInstall = ''
- mkdir -p $out/nix-support
- echo "$terminfo" >> $out/nix-support/propagated-user-env-packages
- cp -r ${desktopItem}/share/applications/ $out/share/
- '';
-
- meta = {
- inherit description;
- license = lib.licenses.gpl3;
- platforms = lib.platforms.unix;
- maintainers = with lib.maintainers; [ rnhmjoj ];
- downloadPage = "http://dist.schmorp.de/rxvt-unicode/Attic/";
- homepage = "http://software.schmorp.de/pkg/rxvt-unicode.html";
- };
-}
diff --git a/.config/nixpkgs/packages/scribus/default.nix b/.config/nixpkgs/packages/scribus/default.nix
deleted file mode 100644
index 10be9e7..0000000
--- a/.config/nixpkgs/packages/scribus/default.nix
+++ /dev/null
@@ -1,71 +0,0 @@
-{ lib, stdenv, fetchurl, pkg-config, freetype, lcms, libtiff, libxml2
-, gnome2, qt4, python2, cups, fontconfig, libjpeg, zlib, libpng, xorg
-, cairo, podofo, hunspell, boost, cmake, imagemagick, ghostscript }:
-
-let
- icon = fetchurl {
- url = "https://gist.githubusercontent.com/ejpcmac/a74b762026c9bc4000be624c3d085517/raw/18edc497c5cb6fdeef1c8aede37a0ee68413f9d3/scribus-icon-centered.svg";
- sha256 = "0hq3i7c2l50445an9glhhg47kj26y16svfajc6naqn307ph9vzc3";
- };
-
- pythonEnv = python2.withPackages (ps: [ ps.tkinter ps.pillow ]);
-in stdenv.mkDerivation rec {
- pname = "scribus";
- version = "1.4.8";
-
- src = fetchurl {
- url = "mirror://sourceforge/${pname}/${pname}/${pname}-${version}.tar.xz";
- sha256 = "0bq433myw6h1siqlsakxv6ghb002rp3mfz5k12bg68s0k6skn992";
- };
-
- nativeBuildInputs = [ pkg-config cmake ];
- buildInputs = with xorg; [
- boost
- cairo
- cups
- fontconfig
- freetype
- gnome2.libart_lgpl
- hunspell
- imagemagick
- lcms
- libX11
- libXau
- libXaw
- libXdmcp
- libXext
- libXi
- libXinerama
- libXtst
- libjpeg
- libpng
- libpthreadstubs
- libtiff
- libxml2
- podofo
- pythonEnv
- qt4
- zlib
- ];
-
- postPatch = ''
- substituteInPlace scribus/util_ghostscript.cpp \
- --replace 'QString gsName("gs");' \
- 'QString gsName("${ghostscript}/bin/gs");'
- '';
-
- postInstall = ''
- for i in 16 24 48 64 96 128 256 512; do
- mkdir -p $out/share/icons/hicolor/''${i}x''${i}/apps
- convert -background none -resize ''${i}x''${i} ${icon} $out/share/icons/hicolor/''${i}x''${i}/apps/scribus.png
- done
- '';
-
- meta = {
- maintainers = [ lib.maintainers.marcweber ];
- platforms = lib.platforms.linux;
- description = "Desktop Publishing (DTP) and Layout program for Linux";
- homepage = "https://www.scribus.net";
- license = lib.licenses.gpl2;
- };
-}
diff --git a/.config/nixpkgs/packages/skeema/default.nix b/.config/nixpkgs/packages/skeema/default.nix
deleted file mode 100644
index 9e9cee7..0000000
--- a/.config/nixpkgs/packages/skeema/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ lib, fetchgit, buildGoModule }:
-
-buildGoModule rec {
- pname = "skeema";
- version = "v1.5.0";
- url = "https://github.com/skeema/skeema";
-
- src = fetchgit {
- inherit url;
- rev = version;
- sha256 = "0mrspmgiww0jlpml24r5f4ail8153f2liva88w9760fd5aky3ix3";
- };
-
- vendorSha256 = null;
-
- doCheck = false;
-
- meta = with lib; {
- homepage = url;
- license = licenses.asl20;
- description = "Schema management CLI for MySQL";
- };
-}
diff --git a/.config/nixpkgs/packages/sowon/default.nix b/.config/nixpkgs/packages/sowon/package.nix
index 38d06b0..38d06b0 100644
--- a/.config/nixpkgs/packages/sowon/default.nix
+++ b/.config/nixpkgs/packages/sowon/package.nix
diff --git a/.config/nixpkgs/packages/sqldef/default.nix b/.config/nixpkgs/packages/sqldef/default.nix
deleted file mode 100644
index 983ea3f..0000000
--- a/.config/nixpkgs/packages/sqldef/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ lib, fetchgit, buildGoModule }:
-
-buildGoModule rec {
- pname = "sqldef";
- version = "v0.8.9";
- url = "https://github.com/k0kubun/sqldef";
-
- src = fetchgit {
- inherit url;
- rev = version;
- sha256 = "1hvx05qwy2g4r1zc1k2f9xv4z815p5jh1a6g41fdlxskjl3kyyf5";
- };
-
- vendorSha256 = "066184zmwdhd8dbkbmwds8aimiawfcvb8px8z1q48c949gvywlx7";
-
- doCheck = false;
-
- meta = with lib; {
- homepage = url;
- license = licenses.mit;
- description = "Idempotent MySQL/PostgreSQL schema management by SQL";
- };
-}
diff --git a/.config/nixpkgs/packages/stylelint/default.nix b/.config/nixpkgs/packages/stylelint/default.nix
deleted file mode 100644
index 1c00b8f..0000000
--- a/.config/nixpkgs/packages/stylelint/default.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ lib, stdenv, fetchgit, yarn, mkYarnPackage }:
-
-mkYarnPackage rec {
-
- pname = "stylelint";
- url = "https://github.com/stylelint/stylelint.git";
- version = "b01ed25dfa3e8231a976eef76bd5e81fb535b1e9";
- sha256 = "18v71nxxbfwqz5by9nq9921bdar3ww0z5z7h0y6rgnpi6iy5ck4x";
- rev = version;
- src = fetchgit { inherit url rev sha256; };
- packageJSON = "${src}/package.json";
- yarnLock = "${yarn-lock}/yarn.lock";
- defaultYarnFlags = [ "--offline" "--frozen-lockfile" "--ignore-engines" "--ignore-scripts" ];
-
- yarn-lock = stdenv.mkDerivation {
- inherit src;
- name = "${pname}-yarn.lock";
- buildInputs = [ yarn ];
- installPhase = ''
- runHook preInstall
- export HOME=.
- mkdir -p $out
- yarn import --ignore-engines --ignore-scripts
- cp yarn.lock $out
- runHook postInstall
- '';
- dontBuild = true;
- outputHashAlgo = "sha256";
- outputHashMode = "recursive";
- outputHash = "sha256-ER+AkEQTIDL0oE1CQEMpXdGbZtcz2KUYkP2mw3eDKHU=";
- };
-
- meta = with lib; {
- homepage = url;
- license = licenses.mit;
- description = "A mighty, modern linter that helps you avoid errors and enforce conventions in your styles.";
- };
-}
diff --git a/.config/nixpkgs/packages/systemd2nix/default.nix b/.config/nixpkgs/packages/systemd2nix/package.nix
index 4953183..b4c6103 100644
--- a/.config/nixpkgs/packages/systemd2nix/default.nix
+++ b/.config/nixpkgs/packages/systemd2nix/package.nix
@@ -14,11 +14,14 @@ python38.pkgs.buildPythonApplication rec {
doCheck = false;
dontBuild = true;
+ format = "other";
installPhase = ''
- mkdir -p $out/bin $out/share/${pname}
+ runHook preInstall
+ mkdir --parents $out/bin $out/share/${pname}
cp ${src}/${pname}.py $out/share/${pname}
makeWrapper ${python38}/bin/python $out/bin/${pname} --add-flags $out/share/${pname}/${pname}.py
+ runHook postInstall
'';
meta = with lib; {
diff --git a/.config/nixpkgs/packages/tiemu/default.nix b/.config/nixpkgs/packages/tiemu/package.nix
index f703981..f703981 100644
--- a/.config/nixpkgs/packages/tiemu/default.nix
+++ b/.config/nixpkgs/packages/tiemu/package.nix
diff --git a/.config/nixpkgs/packages/tilp2/default.nix b/.config/nixpkgs/packages/tilp2/default.nix
deleted file mode 100644
index 743514c..0000000
--- a/.config/nixpkgs/packages/tilp2/default.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{ stdenv, lib, fetchurl, fetchpatch, autoreconfHook, pkg-config, intltool, glib
-, gnome2, gtk2, gfm, libticables2, libticalcs2, libticonv, libtifiles2 }:
-
-stdenv.mkDerivation rec {
- pname = "tilp2";
- version = "1.18";
- src = fetchurl {
- url = "mirror://sourceforge/tilp/${pname}-${version}.tar.bz2";
- sha256 = "0isf73bjwk06baz2gm3vpdh600gqck9ca4aqxzb089dmxriv6fkv";
- };
-
- patches = fetchpatch {
- name = "remove-broken-kde-support.patch";
- url = "https://aur.archlinux.org/cgit/aur.git/plain/remove-broken-kde-support.patch?h=tilp";
- sha256 = "1fn6vh7r45spkwpmkvffkbn7zrcsdrs5mjmspd5rwi3jc12cy3ny";
- };
-
- nativeBuildInputs = [ autoreconfHook pkg-config intltool ];
-
- buildInputs = [
- glib
- gtk2
- gnome2.libglade
- gfm
- libticables2
- libticalcs2
- libticonv
- libtifiles2
- ];
-
- meta = with lib; {
- changelog = "http://lpg.ticalc.org/prj_tilp/news.html";
- description = "Transfer data between Texas Instruments graphing calculators and a computer";
- homepage = "http://lpg.ticalc.org/prj_tilp/";
- license = licenses.gpl2Plus;
- maintainers = with maintainers; [ luc65r ];
- platforms = with platforms; linux ++ darwin;
- };
-}
diff --git a/.config/nixpkgs/packages/validatornu/default.nix b/.config/nixpkgs/packages/validatornu/default.nix
deleted file mode 100644
index a013c08..0000000
--- a/.config/nixpkgs/packages/validatornu/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib, stdenv, fetchzip, jdk, makeWrapper, ... }:
-
-stdenv.mkDerivation rec {
- pname = "validatornu";
- version = "20.6.30";
-
- src = fetchzip {
- url = "https://github.com/validator/validator/releases/download/${version}/vnu.jar_${version}.zip";
- sha256 = "1jls0zpkczsqyzibgjxz11cjy8i62sdfi9cmmn3r7qcl1b4iw1p0";
- };
-
- nativeBuildInputs = [ makeWrapper ];
-
- installPhase = ''
- runHook preInstall
- mkdir --parents $out/bin $out/share/{java,licenses,doc}/$pname
- cp vnu.jar $out/share/java/$pname/vnu.jar
- cp LICENSE $out/share/licenses/$pname/LICENSE
- cp README.md $out/share/doc/$pname/README.md
- cp index.html $out/share/doc/$pname/index.html
- makeWrapper ${jdk}/bin/java $out/bin/${pname} \
- --add-flags "-jar $out/share/java/validatornu/vnu.jar"
- runHook postInstall
- '';
-
- meta = with lib; {
- license = licenses.mit;
- platforms = platforms.linux;
- homepage = "https://github.com/validator/validator#the-nu-html-checker-vnu--";
- description = "Nu Html Checker – Helps you catch problems in your HTML/CSS/SVG";
- };
-}
diff --git a/.config/nixpkgs/packages/wf-shell/package.nix b/.config/nixpkgs/packages/wf-shell/package.nix
new file mode 100644
index 0000000..42e4121
--- /dev/null
+++ b/.config/nixpkgs/packages/wf-shell/package.nix
@@ -0,0 +1,32 @@
+{ stdenv, lib, fetchgit, meson, ninja, pkg-config, wayland, alsa-lib, gtkmm3
+, gtk-layer-shell, pulseaudio, wayfire, wf-config, libdbusmenu-gtk3 }:
+
+stdenv.mkDerivation rec {
+ pname = "wf-shell";
+ version = "9a9af00dc02780357466e27c5e77e316469e7a37";
+
+ src = fetchgit {
+ url = "https://github.com/WayfireWM/wf-shell";
+ sha256 = "sha256-qkfN6JfAp5UaHXNuU6Jwu87YNCyjEJzVLLy8EUG5UNE";
+ };
+
+ mesonFlags = [ "--sysconfdir" "/etc" ];
+ nativeBuildInputs = [ meson ninja pkg-config wayland ];
+
+ buildInputs = [
+ alsa-lib
+ gtk-layer-shell
+ gtkmm3
+ libdbusmenu-gtk3
+ pulseaudio
+ wayfire
+ wf-config
+ ];
+
+ meta = with lib; {
+ homepage = "https://github.com/WayfireWM/wf-shell";
+ description = "GTK3-based panel for Wayfire";
+ license = licenses.mit;
+ platforms = platforms.unix;
+ };
+}
diff --git a/.config/nixpkgs/packages/x11vnc/default.nix b/.config/nixpkgs/packages/x11vnc/default.nix
deleted file mode 100644
index 0507e45..0000000
--- a/.config/nixpkgs/packages/x11vnc/default.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-{ lib, stdenv, fetchgit, openssl, zlib, libjpeg, xorg
-, libvncserver, autoreconfHook, pkg-config }:
-
-stdenv.mkDerivation rec {
- pname = "x11vnc";
- version = "f07df92816ef10b7382a542125955df7f4156a5c";
-
- src = fetchgit {
- url = "https://github.com/LibVNC/x11vnc";
- rev = version;
- sha256 = "1vgkgcqz6fxjgdzqpnw05lg30hdczrfgyzj39z1ips9vcjpb6v8s";
- };
-
- nativeBuildInputs = [ autoreconfHook pkg-config ];
-
- buildInputs = [
- xorg.libXfixes
- xorg.xorgproto
- openssl
- xorg.libXdamage
- zlib
- xorg.libX11
- libjpeg
- xorg.libXtst
- xorg.libXinerama
- xorg.libXrandr
- xorg.libXext
- xorg.libXi
- xorg.libXrender
- libvncserver
- ];
-
- preConfigure = ''
- configureFlags="--mandir=$out/share/man"
- '';
-
- meta = with lib; {
- description = "A VNC server connected to a real X11 screen";
- homepage = "https://github.com/LibVNC/x11vnc/";
- platforms = platforms.linux;
- license = licenses.gpl2;
- maintainers = with maintainers; [ OPNA2608 ];
- };
-}
diff --git a/.config/nixpkgs/packages/xprintidle/default.nix b/.config/nixpkgs/packages/xprintidle/default.nix
deleted file mode 100644
index fc7c3e9..0000000
--- a/.config/nixpkgs/packages/xprintidle/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, libX11, libXScrnSaver, libXext, meson
-, pkg-config, ninja }:
-
-stdenv.mkDerivation rec {
- pname = "xprintidle";
- version = "0.2.4";
-
- src = fetchFromGitHub {
- owner = "g0hl1n";
- repo = pname;
- rev = version;
- sha256 = "10na3ymzfhpq800wsyd23m57ngz69nn5i10c7p9iya8hzi7cf20a";
- };
-
- nativeBuildInputs = [ meson pkg-config ninja ];
- buildInputs = [ libX11 libXScrnSaver libXext ];
-
- meta = with lib; {
- inherit version;
- description = "A command-line tool to print idle time from libXss";
- homepage = "https://github.com/g0hl1n/xprintidle";
- license = licenses.gpl2;
- maintainers = [ maintainers.raskin ];
- platforms = platforms.linux;
- };
-}
diff --git a/.config/nixpkgs/packages/yaml2nix/default.nix b/.config/nixpkgs/packages/yaml2nix/package.nix
index af4ae38..af4ae38 100644
--- a/.config/nixpkgs/packages/yaml2nix/default.nix
+++ b/.config/nixpkgs/packages/yaml2nix/package.nix
diff --git a/.config/nixpkgs/packages/youtube-dl/default.nix b/.config/nixpkgs/packages/youtube-dl/default.nix
deleted file mode 100644
index 5a0ab1d..0000000
--- a/.config/nixpkgs/packages/youtube-dl/default.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ lib, python39, ffmpeg, rtmpdump, phantomjs2, atomicparsley
-, ffmpegSupport ? true, rtmpSupport ? true, phantomjsSupport ? false
-, hlsEncryptedSupport ? true, withAlias ? true }:
-
-with python39.pkgs;
-
-buildPythonPackage rec {
- pname = "yt-dlp";
- version = "2021.10.22";
-
- src = fetchPypi {
- inherit pname;
- version = builtins.replaceStrings [ ".0" ] [ "." ] version;
- sha256 = "sha256-okuWZr0iNBSeTajE8Wu45fdGwpQo0S7gT8HBG1JHowc=";
- };
-
- propagatedBuildInputs = [ websockets mutagen ] ++ lib.optional hlsEncryptedSupport pycryptodomex;
-
- makeWrapperArgs = let packagesToBinPath = [ atomicparsley ]
- ++ lib.optional ffmpegSupport ffmpeg
- ++ lib.optional rtmpSupport rtmpdump
- ++ lib.optional phantomjsSupport phantomjs2;
- in [ ''--prefix PATH : "${lib.makeBinPath packagesToBinPath}"'' ];
-
- doCheck = false;
- setupPyBuildFlags = [ "build_lazy_extractors" ];
- postInstall = lib.optionalString withAlias ''ln -s "$out/bin/yt-dlp" "$out/bin/youtube-dl"'';
-
- meta = with lib; {
- license = licenses.unlicense;
- maintainers = with maintainers; [ mkg20001 ];
- homepage = "https://github.com/yt-dlp/yt-dlp/";
- changelog = "https://github.com/yt-dlp/yt-dlp/raw/${version}/Changelog.md";
- description = "Command-line tool to download videos from YouTube.com and other sites (youtube-dl fork)";
- };
-}
diff --git a/.config/nixpkgs/shells/ansible.nix b/.config/nixpkgs/shells/ansible.nix
deleted file mode 100644
index 3f6de79..0000000
--- a/.config/nixpkgs/shells/ansible.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-let
-
- # nix-shell -E 'import (builtins.fetchurl "$url")'
-
- name = "nix-shell.ansible";
- pkgs = import <nixpkgs> { };
- project = "${builtins.getEnv "HOME"}/Shares/Projects/infrastructure/ansible";
-
-in pkgs.mkShell {
-
- inherit name;
-
- buildInputs = with pkgs; [ python38.pkgs.pip ansible_2_9 ];
-
- shellHook = ''
- export virtualenvs=$HOME/.local/share/virtualenvs
- mkdir -p $virtualenvs
- python -m venv $virtualenvs/ansible-mitogen
- . $virtualenvs/ansible-mitogen/bin/activate
- python -m pip install mitogen==0.2.9
- export ANSIBLE_STRATEGY_PLUGINS=$virtualenvs/ansible-mitogen/lib/python3.8/site-packages/ansible_mitogen/plugins
- export ANSIBLE_STRATEGY=mitogen_linear
- export PS1='\h (${name}) \W \$ '
- cd '${project}' || exit 1
- ssh -T git@github.com
- '';
-}
-
diff --git a/.config/nixpkgs/shells/ansible/shell.nix b/.config/nixpkgs/shells/ansible/shell.nix
new file mode 100644
index 0000000..96eb244
--- /dev/null
+++ b/.config/nixpkgs/shells/ansible/shell.nix
@@ -0,0 +1,29 @@
+let
+
+ # nix-shell -E 'import (builtins.fetchurl "$url")'
+
+ name = "nix-shell.ansible";
+
+ pkgs = import (builtins.fetchTarball {
+ url = "https://releases.nixos.org/nixos/21.11/nixos-21.11.336020.2128d0aa28e/nixexprs.tar.xz";
+ sha256 = "0w8plbxms0di6gnh0k2yhj0pgxzxas7g5x0m01zjzixf16i2bapj";
+ }) { };
+
+ project = "${builtins.getEnv "HOME"}/Shares/Projects/infrastructure/ansible";
+
+ python = pkgs.python39.withPackages (ps: with ps; [ mitogen ]);
+
+in pkgs.mkShell {
+
+ inherit name;
+
+ buildInputs = [ python pkgs.ansible_2_10 ];
+
+ shellHook = ''
+ export ANSIBLE_STRATEGY_PLUGINS=${python}/lib/*/site-packages/ansible_mitogen/plugins
+ export ANSIBLE_STRATEGY=mitogen_linear
+ export PS1='\h (${name}) \W \$ '
+ cd '${project}' || exit 1
+ ssh -T git@github.com
+ '';
+}
diff --git a/.config/nixpkgs/shells/bubblewrap/shell.nix b/.config/nixpkgs/shells/bubblewrap/shell.nix
new file mode 100644
index 0000000..aee8a8b
--- /dev/null
+++ b/.config/nixpkgs/shells/bubblewrap/shell.nix
@@ -0,0 +1,36 @@
+let
+
+ # nix-shell -E 'import (builtins.fetchurl "$url")'
+ # https://github.com/containers/bubblewrap/blob/main/demos/bubblewrap-shell.sh
+ # https://manpages.debian.org/testing/bubblewrap/bwrap.1.en.html
+
+ name = "nix-shell.bubblewrap";
+
+ pkgs = import (builtins.fetchTarball {
+ url = "https://releases.nixos.org/nixos/22.11/nixos-22.11.466.596a8e828c5/nixexprs.tar.xz";
+ sha256 = "1367bad5zz0mfm4czb6p0s0ni38f0x1ffh02z76rx4nranipqbgg";
+ }) { };
+
+ bubblewrap = arguments@{ ... }: pkgs.writeShellApplication {
+ inherit name;
+ text = ''
+ PATH=${pkgs.lib.strings.makeBinPath [ pkgs.bubblewrap ]}
+ bwrap \
+ '' + pkgs.lib.strings.concatStringsSep " \\\n"
+ (pkgs.lib.attrsets.mapAttrsToList (argument: value: "--${argument} ${value} ")
+ arguments) + "/bin/sh\n";
+ };
+
+ jail = bubblewrap {
+ clearenv = "";
+ setenv = "PATH ${pkgs.lib.strings.makeBinPath [ pkgs.busybox ]}";
+ ro-bind = "/nix /nix" + " --ro-bind /bin /bin";
+ };
+
+in pkgs.mkShell {
+ inherit name;
+ shellHook = ''
+ printf '%s\n' "${jail}/bin/${jail.name}"
+ exec "${jail}/bin/${jail.name}"
+ '';
+}
diff --git a/.config/nixpkgs/shells/cake.nix b/.config/nixpkgs/shells/cake/shell.nix
index 401a967..2991136 100644
--- a/.config/nixpkgs/shells/cake.nix
+++ b/.config/nixpkgs/shells/cake/shell.nix
@@ -1,24 +1,24 @@
let
# nix-shell -E 'import (builtins.fetchurl "$url")'
+ # NIX_CONFIG="sandbox = relaxed" nix-shell --option builders '' shell.nix
name = "nix-shell.cake";
pkgs = import (builtins.fetchTarball {
- url = "https://releases.nixos.org/nixos/21.05/nixos-21.05.650.eaba7870ffc/nixexprs.tar.xz";
- sha256 = "08fpds1bkv9106c6s5w3p5r4v3dc24bhk9asm9vqbxxypjglqg9l"; }) { };
-
- alpine-3-12-amd64 = pkgs.dockerTools.pullImage rec {
- imageName = "alpine";
- imageDigest = "sha256:2a8831c57b2e2cb2cda0f3a7c260d3b6c51ad04daea0b3bfc5b55f489ebafd71";
- sha256 = "1px8xhk0a3b129cc98d3wm4s0g1z2mahnrxd648gkdbfsdj9dlxp";
- finalImageName = imageName;
- finalImageTag = "3.12";
+ url = "https://releases.nixos.org/nixos/23.11/nixos-23.11.6510.a5e4bbcb4780/nixexprs.tar.xz";
+ sha256 = "0f73pbh4j89wgk7rn9xp0q8ybw15zkhw0prjz5r37aaryjs8hnbd";
+ }) { };
+
+ alpine = pkgs.fetchurl {
+ url = "https://dl-cdn.alpinelinux.org/alpine/v3.19/releases/x86_64/alpine-minirootfs-3.19.1-x86_64.tar.gz";
+ sha256 = "sha256-GFEjzrbn0I8kSf/1VD2yBv+3nezYFGCNOZrUR+CPop4=";
};
- cook = { name, src, contents ? [ ], path ? [ ], script ? "", prepare ? "", cleanup ? "", sha256 ? pkgs.lib.fakeSha256 }: pkgs.stdenvNoCC.mkDerivation {
+ cook = { name, src, contents ? [ ], path ? [ ], script ? "", prepare ? "", cleanup ? "" }: pkgs.stdenvNoCC.mkDerivation {
+ __noChroot = true;
inherit name src contents;
- phases = [ "unpackPhase" "installPhase" ];
+ phases = [ "installPhase" ];
buildInputs = [ pkgs.proot pkgs.rsync pkgs.tree pkgs.kmod ];
bootstrap = pkgs.writeScript "bootstrap-${name}" ''
${script}
@@ -28,12 +28,12 @@ let
installPhase = ''
set -euo pipefail
mkdir --parents rootfs $out/rootfs
- tar --extract --file=layer.tar -C rootfs
+ tar --extract --file=${src} -C rootfs
${prepare}
cp $bootstrap rootfs/bootstrap
- proot --cwd=/ --root-id --rootfs=rootfs /usr/bin/env - /bin/sh -euc '. /etc/profile && /bootstrap'
+ proot --cwd=/ --root-id --rootfs=rootfs /usr/bin/env - /bin/sh -euc 'BASH_VERSION= . /etc/profile && /bootstrap'
printf 'PATH=${pkgs.lib.strings.makeBinPath path}:$PATH' >> rootfs/etc/profile
[ -n "$contents" ] && {
@@ -48,18 +48,14 @@ let
${cleanup}
printf '\n%s\n\n' "$(du --all --max-depth 1 --human-readable rootfs | sort --human-numeric-sort)"
- cp -rT rootfs $out/rootfs
+ cp --recursive --no-target-directory rootfs $out/rootfs
'';
- outputHashAlgo = "sha256";
- outputHashMode = "recursive";
- outputHash = sha256;
};
- bake = { name, image, size ? "1G", debug ? false, kernel ? pkgs.linux, options ? [ ], modules ? [ ], uuid ? "99999999-9999-9999-9999-999999999999", sha256 ? pkgs.lib.fakeSha256 }: let
+ bake = { name, image, size ? "1G", debug ? false, kernel ? pkgs.linux, options ? [ ], modules ? [ ], uuid ? "99999999-9999-9999-9999-999999999999" }: let
initrd = cook {
- inherit sha256;
name = "initrd-${name}";
- src = alpine-3-12-amd64;
+ src = alpine;
script = ''
rm -rf home opt media root run srv tmp var
printf '#!/bin/sh -eu
@@ -134,22 +130,36 @@ let
losetup --detach "$LOOP"
'';
- alpine = cook {
+ system = cook {
name = "alpine";
- src = alpine-3-12-amd64;
- sha256 = "1ss4rh1fgs99h0v6czqq5rnfk1cag1ldazarm9jr5a0ahc4bnk0v";
+ src = alpine;
contents = [ pkgs.glibc pkgs.gawk ];
path = [ pkgs.gawk ];
script = ''
cat /etc/alpine-release
sed -i 's/#ttyS0/ttyS0/' /etc/inittab
+ printf 'migh7Lib\nmigh7Lib\n' | adduser alpine
'';
};
- alpine-machine = bake {
+ machine = cook {
+ name = "alpine";
+ src = alpine;
+ contents = [ pkgs.glibc pkgs.gawk ];
+ path = [ pkgs.gawk ];
+ script = ''
+ apk update
+ apk upgrade
+ apk add openrc
+ cat /etc/alpine-release
+ sed -i 's/#ttyS0/ttyS0/' /etc/inittab
+ printf 'migh7Lib\nmigh7Lib\n' | adduser alpine
+ '';
+ };
+
+ virtual-machine = bake {
name = "alpine-machine";
- image = alpine;
- sha256 = "0k5migqcrf5hz99ka5p6pr9qv86bd69y7fbs9m5qpby9qh3xmskf";
+ image = machine;
kernel = pkgs.linuxPackages_5_10.kernel;
options = [ "console=tty1" "console=ttyS0" ];
size = "128M";
@@ -178,11 +188,6 @@ let
/usr/bin/env - /bin/sh -c '. /etc/profile && sh'
'';
- # doas ${alpine-machine}
- # sudo ${alpine-machine}
- # qemu-system-x86_64 -nographic -drive if=virtio,file=./${alpine-machine.name}.img,format=raw
- # qemu-system-x86_64 -curses -drive if=virtio,file=./${alpine-machine.name}.img,format=raw
-
in pkgs.mkShell {
inherit name;
@@ -191,8 +196,14 @@ in pkgs.mkShell {
shellHook = ''
export PS1='\h (${name}) \W \$ '
+
+ # sudo ${virtual-machine}
+ # doas ${virtual-machine}
+ # qemu-system-x86_64 -nographic -drive if=virtio,file=./${virtual-machine.name}.img,format=raw
+ # qemu-system-x86_64 -curses -drive if=virtio,file=./${virtual-machine.name}.img,format=raw
+
${container {
- rootfs = "${alpine}/rootfs";
+ rootfs = "${system}/rootfs";
binds = [ "/proc" "/dev" ];
options = [ "--verbose=0" ];
}}
diff --git a/.config/nixpkgs/shells/coreboot.nix b/.config/nixpkgs/shells/coreboot/shell.nix
index 242c621..242c621 100644
--- a/.config/nixpkgs/shells/coreboot.nix
+++ b/.config/nixpkgs/shells/coreboot/shell.nix
diff --git a/.config/nixpkgs/shells/falcon.nix b/.config/nixpkgs/shells/falcon/shell.nix
index 7bd0b54..7bd0b54 100644
--- a/.config/nixpkgs/shells/falcon.nix
+++ b/.config/nixpkgs/shells/falcon/shell.nix
diff --git a/.config/nixpkgs/shells/firejail/shell.nix b/.config/nixpkgs/shells/firejail/shell.nix
new file mode 100644
index 0000000..4f5e5e1
--- /dev/null
+++ b/.config/nixpkgs/shells/firejail/shell.nix
@@ -0,0 +1,48 @@
+let
+
+ # nix-shell -E 'import (builtins.fetchurl "$url")'
+ # https://www.man7.org/linux/man-pages/man1/Firejail.1.html
+
+ name = "nix-shell.firejail";
+
+ pkgs = import (builtins.fetchTarball {
+ url = "https://releases.nixos.org/nixos/22.11/nixos-22.11.466.596a8e828c5/nixexprs.tar.xz";
+ sha256 = "1367bad5zz0mfm4czb6p0s0ni38f0x1ffh02z76rx4nranipqbgg";
+ }) { };
+
+ firejail = {
+ rootfs ? "rootfs",
+ options ? [ ],
+ path ? [ pkgs.busybox ],
+ entrypoint ? "/bin/sh"
+ }:
+ pkgs.writeShellApplication {
+ inherit name;
+ text = ''
+ set -euxo pipefail
+ PATH=${pkgs.lib.strings.makeBinPath [ pkgs.firejail pkgs.coreutils ]}
+ mkdir --parents '${rootfs}'
+ firejail \
+ --chroot '${rootfs}' \
+ ${pkgs.lib.strings.concatMapStringsSep " " (value: value) options} \
+ -- /usr/bin/env --ignore-environment ${
+ pkgs.writeScript "entrypoint-${name}" ''
+ set -eu
+ export PATH=${pkgs.lib.strings.makeBinPath path}
+ ${entrypoint}
+ ''
+ };
+ '';
+ };
+
+ jail = firejail {
+ options = [ ];
+ };
+
+in pkgs.mkShell {
+ inherit name;
+ shellHook = ''
+ printf '%s\n' "${jail}/bin/${jail.name}"
+ exec "${jail}/bin/${jail.name}"
+ '';
+}
diff --git a/.config/nixpkgs/shells/larynx-server/shell.nix b/.config/nixpkgs/shells/larynx-server/shell.nix
new file mode 100644
index 0000000..9021e47
--- /dev/null
+++ b/.config/nixpkgs/shells/larynx-server/shell.nix
@@ -0,0 +1,54 @@
+let
+
+ name = "nix-shell.larynx-server";
+
+ nixpkgs = import <nixpkgs> { };
+
+ pkgs = import (builtins.fetchTarball {
+ url = "https://releases.nixos.org/nixos/22.11/nixos-22.11.466.596a8e828c5/nixexprs.tar.xz";
+ sha256 = "1367bad5zz0mfm4czb6p0s0ni38f0x1ffh02z76rx4nranipqbgg";
+ }) { };
+
+ larynx = pkgs.stdenvNoCC.mkDerivation rec {
+ name = "larynx";
+ version = "1.1.0";
+ sourceRoot = ".";
+
+ src = pkgs.dockerTools.exportImage {
+ fromImage = pkgs.dockerTools.pullImage rec {
+ imageName = "rhasspy/larynx";
+ imageDigest = "sha256:ada5b443e2446b38ba61d764ec37c0ed78d46e659a011243967e7cc8e52311e3";
+ sha256 = "sha256-TbaHNNMRGp4SWYC06WSmNr3igpiJagDKoD3TEnttYt8=";
+ finalImageName = imageName;
+ finalImageTag = version;
+ };
+ diskSize = "3072";
+ };
+
+ phases = [ "unpackPhase" "installPhase" ];
+
+ installPhase = ''
+ mkdir --parents $out/bin/larynx/app
+ cp --recursive home/larynx/app/.venv $out/bin/larynx/app
+ cp --recursive home/larynx/app/larynx $out/bin/larynx/app
+ '';
+ };
+
+ fhs = pkgs.buildFHSUserEnv {
+ name = "larynx-server";
+ runScript = "${pkgs.writeScriptBin name ''
+ export PYTHONPATH=/bin/larynx/app
+ /bin/larynx/app/.venv/bin/python3 -m larynx.server
+ ''}/bin/${name}";
+ targetPkgs = pkgs: [
+ larynx
+ pkgs.python39
+ ];
+ profile = "export FHS=1";
+ };
+
+in pkgs.mkShell {
+ inherit fhs;
+ inherit name;
+ shellHook = "exec ${fhs}/bin/${fhs.name}";
+}
diff --git a/.config/nixpkgs/shells/larynx/shell.nix b/.config/nixpkgs/shells/larynx/shell.nix
new file mode 100644
index 0000000..ac2e940
--- /dev/null
+++ b/.config/nixpkgs/shells/larynx/shell.nix
@@ -0,0 +1,54 @@
+let
+
+ name = "nix-shell.larynx";
+
+ nixpkgs = import <nixpkgs> { };
+
+ pkgs = import (builtins.fetchTarball {
+ url = "https://releases.nixos.org/nixos/22.11/nixos-22.11.466.596a8e828c5/nixexprs.tar.xz";
+ sha256 = "1367bad5zz0mfm4czb6p0s0ni38f0x1ffh02z76rx4nranipqbgg";
+ }) { };
+
+ larynx = pkgs.stdenvNoCC.mkDerivation rec {
+ name = "larynx";
+ version = "1.1.0";
+ sourceRoot = ".";
+
+ src = pkgs.dockerTools.exportImage {
+ fromImage = pkgs.dockerTools.pullImage rec {
+ imageName = "rhasspy/larynx";
+ imageDigest = "sha256:ada5b443e2446b38ba61d764ec37c0ed78d46e659a011243967e7cc8e52311e3";
+ sha256 = "sha256-TbaHNNMRGp4SWYC06WSmNr3igpiJagDKoD3TEnttYt8=";
+ finalImageName = imageName;
+ finalImageTag = version;
+ };
+ diskSize = "3072";
+ };
+
+ phases = [ "unpackPhase" "installPhase" ];
+
+ installPhase = ''
+ mkdir --parents $out/bin/larynx/app
+ cp --recursive home/larynx/app/.venv $out/bin/larynx/app
+ cp --recursive home/larynx/app/larynx $out/bin/larynx/app
+ '';
+ };
+
+ fhs = pkgs.buildFHSUserEnv {
+ name = "larynx";
+ runScript = "${pkgs.writeScriptBin name ''
+ export PYTHONPATH=/bin/larynx/app
+ /bin/larynx/app/.venv/bin/python3 -m larynx "$@"
+ ''}/bin/${name}";
+ targetPkgs = pkgs: [
+ larynx
+ pkgs.python39
+ ];
+ profile = "export FHS=1";
+ };
+
+in pkgs.mkShell {
+ inherit fhs;
+ inherit name;
+ shellHook = "exec ${fhs}/bin/${fhs.name}";
+}
diff --git a/.config/nixpkgs/shells/mermaid-live-editor/shell.nix b/.config/nixpkgs/shells/mermaid-live-editor/shell.nix
new file mode 100644
index 0000000..db89a42
--- /dev/null
+++ b/.config/nixpkgs/shells/mermaid-live-editor/shell.nix
@@ -0,0 +1,74 @@
+let
+
+ name = "nix-shell.mermaid-live-editor";
+ version = "bf6c54c00e84d8c7d541920607db72f50d775ba5";
+
+ pkgs = import (builtins.fetchTarball {
+ url = "https://releases.nixos.org/nixos/22.11/nixos-22.11.466.596a8e828c5/nixexprs.tar.xz";
+ sha256 = "1367bad5zz0mfm4czb6p0s0ni38f0x1ffh02z76rx4nranipqbgg";
+ }) { };
+
+ package = pkgs.callPackage ({ lib, stdenv, fetchgit, mkYarnModules }:
+
+ stdenv.mkDerivation rec {
+ inherit version;
+ pname = "mermaid-live-editor-node-modules";
+
+ src = fetchgit {
+ rev = version;
+ url = "https://github.com/mermaid-js/mermaid-live-editor.git";
+ sha256 = "sha256-SadZzBruGKh4LCR9vr87vl/HBEgVN8Qczi9+thGmNCE=";
+ };
+
+ node_modules = mkYarnModules {
+ inherit pname version;
+ yarnLock = "${src}/yarn.lock";
+ packageJSON = "${src}/package.json";
+ };
+
+ installPhase = ''
+ runHook preInstall
+ mkdir $out
+ cp --recursive --no-target-directory ${node_modules} $out
+ cd $out/node_modules
+ chmod +w .
+ ln --symbolic mermaid-live-editor/node_modules/svelte-preprocess .
+ runHook postInstall
+ '';
+
+ meta = with lib; {
+ homepage = url;
+ license = licenses.mit;
+ description = "Edit, preview and share mermaid charts/diagrams. New implementation of the live editor.";
+ };
+ }) { };
+
+ shell = pkgs.writeShellApplication {
+ inherit name;
+ text = ''
+ /usr/bin/env --ignore-environment /bin/sh -c ${
+ pkgs.writeScript name ''
+ export PS1='\h (${name}) \W \$ '
+ export PATH=${
+ pkgs.lib.strings.makeBinPath [
+ package
+ pkgs.busybox
+ pkgs.git
+ pkgs.yarn
+ ]
+ }
+ git clone https://github.com/mermaid-js/mermaid-live-editor.git
+ cd mermaid-live-editor
+ git checkout '${version}'
+ ln -sf '${package}/node_modules'
+ stat .svelte-kit || yarn build
+ yarn preview
+ ''
+ };
+ '';
+ };
+
+in pkgs.mkShell {
+ inherit name;
+ shellHook = "exec ${shell}/bin/${shell.name}";
+}
diff --git a/.config/nixpkgs/shells/nixops.nix b/.config/nixpkgs/shells/nixops.nix
deleted file mode 100644
index 270f1c4..0000000
--- a/.config/nixpkgs/shells/nixops.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ version ? "21.05" }:
-
-let
-
- # nix-shell -E 'import (builtins.fetchurl "$url")'
-
- inherit version;
- pkgs = import <nixpkgs> { };
- name = "nix-shell.nixops.${version}.";
- project = "${builtins.getEnv "HOME"}/Shares/Projects/infrastructure";
- channel = (import "${project}/nixos/versions.nix")."${version}".channel;
-
-in pkgs.mkShell {
-
- inherit name;
-
- shellHook = ''
- export NIXOPS_STATE=nixos/deployments.nixops
- export VAULT_TOKEN=$(cat $HOME/.local/share/vault/token)
- export VAULT_ADDR='http://vault.test'
- export NIX_PATH=${channel}/nixexprs.tar.xz
- export _NIX_CHANNEL=${channel}
- export PS1='\h (${name}''${_NIX_CHANNEL##*.}) \W \$ '
- cd '${project}' || exit 1
- ssh -T git@github.com
- '';
-}
diff --git a/.config/nixpkgs/shells/nsjail/shell.nix b/.config/nixpkgs/shells/nsjail/shell.nix
new file mode 100644
index 0000000..d954588
--- /dev/null
+++ b/.config/nixpkgs/shells/nsjail/shell.nix
@@ -0,0 +1,52 @@
+let
+
+ # nix-shell -E 'import (builtins.fetchurl "$url")'
+ # https://nsjail.dev/
+
+ name = "nix-shell.nsjail";
+
+ pkgs = import (builtins.fetchTarball {
+ url = "https://releases.nixos.org/nixos/22.11/nixos-22.11.466.596a8e828c5/nixexprs.tar.xz";
+ sha256 = "1367bad5zz0mfm4czb6p0s0ni38f0x1ffh02z76rx4nranipqbgg";
+ }) { };
+
+ nsjail = {
+ rootfs ? "rootfs",
+ options ? [ ],
+ path ? [ pkgs.busybox ],
+ entrypoint ? "/bin/sh"
+ }:
+ pkgs.writeShellApplication {
+ inherit name;
+ text = ''
+ set -euxo pipefail
+ PATH=${pkgs.lib.strings.makeBinPath [ pkgs.nsjail pkgs.coreutils ]}
+ mkdir --parents '${rootfs}'
+ nsjail \
+ --chroot "$(pwd)"/'${rootfs}' \
+ ${pkgs.lib.strings.concatMapStringsSep " " (value: value) options} \
+ -- /usr/bin/env --ignore-environment ${
+ pkgs.writeScript "entrypoint-${name}" ''
+ set -eu
+ export PATH=${pkgs.lib.strings.makeBinPath path}
+ ${entrypoint}
+ ''
+ };
+ '';
+ };
+
+ jail = nsjail {
+ options = [
+ "--bindmount_ro /nix"
+ "--bindmount_ro /usr"
+ "--bindmount_ro /bin"
+ ];
+ };
+
+in pkgs.mkShell {
+ inherit name;
+ shellHook = ''
+ printf '%s\n' "${jail}/bin/${jail.name}"
+ exec "${jail}/bin/${jail.name}"
+ '';
+}
diff --git a/.config/nixpkgs/shells/planner/shell.nix b/.config/nixpkgs/shells/planner/shell.nix
new file mode 100644
index 0000000..079beda
--- /dev/null
+++ b/.config/nixpkgs/shells/planner/shell.nix
@@ -0,0 +1,68 @@
+let
+
+ name = "nix-shell.planner";
+
+ pkgs = (import (builtins.fetchTarball {
+ url = "https://releases.nixos.org/nixos/21.11/nixos-21.11.336020.2128d0aa28e/nixexprs.tar.xz";
+ sha256 = "0w8plbxms0di6gnh0k2yhj0pgxzxas7g5x0m01zjzixf16i2bapj";
+ }) { });
+
+ package = pkgs.callPackage ({ lib, stdenvNoCC, fetchgit, pkgconfig, intltool
+ , automake111x, autoconf, libtool, gnome2, libxslt, python2, gcc48 }:
+ stdenvNoCC.mkDerivation rec {
+ pname = "planner";
+ version = "de43d655f9f8103993129cde9de3d0e080d0546c";
+ src = fetchgit {
+ url = "https://gitlab.gnome.org/World/planner.git";
+ sha256 = "1zpcswdpcjhllk7phy3z1zyxcgqr4pp0vf5fgpg5f3gqpk4xvwyg";
+ rev = version;
+ };
+ nativeBuildInputs = [
+ autoconf
+ automake111x
+ gnome2.gnome-common
+ gnome2.gtk-doc
+ gnome2.scrollkeeper
+ intltool
+ libtool
+ pkgconfig
+ ];
+ buildInputs = [
+ gcc48
+ gnome2.GConf
+ gnome2.gtk
+ gnome2.libglade
+ gnome2.libgnomecanvas
+ gnome2.libgnomeui
+ libxslt
+ python2.pkgs.pygtk
+ ];
+ enableParallelBuilding = true;
+ preConfigure = "./autogen.sh";
+ makeFlags = [ "CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS" ];
+ configureFlags = [ "--enable-python" "--enable-python-plugin" ];
+ meta = with lib; {
+ description = "Project management application for GNOME";
+ homepage = "https://wiki.gnome.org/Apps/Planner";
+ license = licenses.gpl2Plus;
+ platforms = platforms.all;
+ };
+ }) { };
+
+ shell = pkgs.writeShellApplication {
+ inherit name;
+ text = ''
+ /usr/bin/env --ignore-environment /bin/sh -c ${
+ pkgs.writeScript name ''
+ export PS1='\h (${name}) \W \$ '
+ export PATH=${pkgs.lib.strings.makeBinPath [ package pkgs.busybox ]}
+ /bin/sh
+ ''
+ };
+ '';
+ };
+
+in pkgs.mkShell {
+ inherit name package;
+ shellHook = "exec ${shell}/bin/${shell.name}";
+}
diff --git a/.config/nixpkgs/shells/proot/shell.nix b/.config/nixpkgs/shells/proot/shell.nix
new file mode 100644
index 0000000..46ed76f
--- /dev/null
+++ b/.config/nixpkgs/shells/proot/shell.nix
@@ -0,0 +1,52 @@
+let
+
+ # nix-shell -E 'import (builtins.fetchurl "$url")'
+ # https://manpages.ubuntu.com/manpages/trusty/man1/proot.1.html
+
+ name = "nix-shell.proot";
+
+ pkgs = import (builtins.fetchTarball {
+ url = "https://releases.nixos.org/nixos/22.11/nixos-22.11.466.596a8e828c5/nixexprs.tar.xz";
+ sha256 = "1367bad5zz0mfm4czb6p0s0ni38f0x1ffh02z76rx4nranipqbgg";
+ }) { };
+
+ proot = {
+ rootfs ? "rootfs",
+ binds ? [ ],
+ options ? [ ],
+ path ? [ pkgs.busybox ],
+ entrypoint ? "/bin/sh"
+ }:
+ pkgs.writeShellApplication {
+ inherit name;
+ text = ''
+ set -euxo pipefail
+ PATH=${pkgs.lib.strings.makeBinPath [ pkgs.proot pkgs.coreutils ]}
+ mkdir --parents '${rootfs}'
+ proot \
+ --rootfs='${rootfs}' \
+ ${pkgs.lib.strings.concatMapStringsSep " " (option: "--bind=${option}") binds} \
+ ${pkgs.lib.strings.concatMapStringsSep " " (value: value) options} \
+ /usr/bin/env --ignore-environment ${
+ pkgs.writeScript "entrypoint-${name}" ''
+ set -eu
+ export HISTFILE=/dev/null
+ export PATH=${pkgs.lib.strings.makeBinPath path}
+ ${entrypoint}
+ ''
+ };
+ '';
+ };
+
+ jail = proot {
+ binds = [ "/nix" "/usr" "/bin" ];
+ options = [ "--cwd=/" "--verbose=0" ];
+ };
+
+in pkgs.mkShell {
+ inherit name;
+ shellHook = ''
+ printf '%s\n' "${jail}/bin/${jail.name}"
+ exec "${jail}/bin/${jail.name}"
+ '';
+}
diff --git a/.config/nixpkgs/shells/pure/shell.nix b/.config/nixpkgs/shells/pure/shell.nix
new file mode 100644
index 0000000..2e58365
--- /dev/null
+++ b/.config/nixpkgs/shells/pure/shell.nix
@@ -0,0 +1,22 @@
+let
+
+ name = "nix-shell.pure";
+ pkgs = import <nixpkgs> { };
+
+ shell = pkgs.writeShellApplication {
+ inherit name;
+ text = ''
+ /usr/bin/env --ignore-environment /bin/sh -c ${
+ pkgs.writeScript name ''
+ export PS1='\h (${name}) \W \$ '
+ export PATH=${pkgs.lib.strings.makeBinPath [ pkgs.busybox ]}
+ /bin/sh
+ ''
+ };
+ '';
+ };
+
+in pkgs.mkShell {
+ inherit name;
+ shellHook = "exec ${shell}/bin/${shell.name}";
+}
diff --git a/.config/nixpkgs/shells/scribus/shell.nix b/.config/nixpkgs/shells/scribus/shell.nix
new file mode 100644
index 0000000..9658c0a
--- /dev/null
+++ b/.config/nixpkgs/shells/scribus/shell.nix
@@ -0,0 +1,96 @@
+let
+
+ name = "nix-shell.scribus";
+
+ pkgs = (import (builtins.fetchTarball {
+ url = "https://releases.nixos.org/nixos/21.11/nixos-21.11.336020.2128d0aa28e/nixexprs.tar.xz";
+ sha256 = "0w8plbxms0di6gnh0k2yhj0pgxzxas7g5x0m01zjzixf16i2bapj";
+ }) { });
+
+ package = pkgs.callPackage ({ lib, stdenv, fetchurl, pkg-config, freetype, lcms, libtiff
+ , libxml2, gnome2, qt4, python2, cups, fontconfig, libjpeg, zlib, libpng
+ , xorg, cairo, podofo, hunspell, boost, cmake, imagemagick, ghostscript }:
+
+ let
+ icon = fetchurl {
+ url = "https://gist.githubusercontent.com/ejpcmac/a74b762026c9bc4000be624c3d085517/raw/18edc497c5cb6fdeef1c8aede37a0ee68413f9d3/scribus-icon-centered.svg";
+ sha256 = "0hq3i7c2l50445an9glhhg47kj26y16svfajc6naqn307ph9vzc3";
+ };
+ pythonEnv = python2.withPackages (ps: [ ps.tkinter ps.pillow ]);
+ in stdenv.mkDerivation rec {
+ pname = "scribus";
+ version = "1.4.8";
+
+ src = fetchurl {
+ url = "mirror://sourceforge/${pname}/${pname}/${pname}-${version}.tar.xz";
+ sha256 = "0bq433myw6h1siqlsakxv6ghb002rp3mfz5k12bg68s0k6skn992";
+ };
+
+ nativeBuildInputs = [ pkg-config cmake ];
+ buildInputs = with xorg; [
+ boost
+ cairo
+ cups
+ fontconfig
+ freetype
+ gnome2.libart_lgpl
+ hunspell
+ imagemagick
+ lcms
+ libX11
+ libXau
+ libXaw
+ libXdmcp
+ libXext
+ libXi
+ libXinerama
+ libXtst
+ libjpeg
+ libpng
+ libpthreadstubs
+ libtiff
+ libxml2
+ podofo
+ pythonEnv
+ qt4
+ zlib
+ ];
+
+ postPatch = ''
+ substituteInPlace scribus/util_ghostscript.cpp \
+ --replace 'QString gsName("gs");' \
+ 'QString gsName("${ghostscript}/bin/gs");'
+ '';
+
+ postInstall = ''
+ for i in 16 24 48 64 96 128 256 512; do
+ mkdir -p $out/share/icons/hicolor/''${i}x''${i}/apps
+ convert -background none -resize ''${i}x''${i} ${icon} $out/share/icons/hicolor/''${i}x''${i}/apps/scribus.png
+ done
+ '';
+
+ meta = {
+ platforms = lib.platforms.linux;
+ description = "Desktop Publishing (DTP) and Layout program for Linux";
+ homepage = "https://www.scribus.net";
+ license = lib.licenses.gpl2;
+ };
+ }) { };
+
+ shell = pkgs.writeShellApplication {
+ inherit name;
+ text = ''
+ /usr/bin/env --ignore-environment /bin/sh -c ${
+ pkgs.writeScript name ''
+ export PS1='\h (${name}) \W \$ '
+ export PATH=${pkgs.lib.strings.makeBinPath [ package pkgs.busybox ]}
+ /bin/sh
+ ''
+ };
+ '';
+ };
+
+in pkgs.mkShell {
+ inherit name package;
+ shellHook = "exec ${shell}/bin/${shell.name}";
+}
diff --git a/.config/nixpkgs/shells/tilp2/shell.nix b/.config/nixpkgs/shells/tilp2/shell.nix
new file mode 100644
index 0000000..f57bc3b
--- /dev/null
+++ b/.config/nixpkgs/shells/tilp2/shell.nix
@@ -0,0 +1,66 @@
+let
+
+ name = "nix-shell.tilp2";
+
+ pkgs = (import (builtins.fetchTarball {
+ url = "https://releases.nixos.org/nixos/21.11/nixos-21.11.336020.2128d0aa28e/nixexprs.tar.xz";
+ sha256 = "0w8plbxms0di6gnh0k2yhj0pgxzxas7g5x0m01zjzixf16i2bapj";
+ }) { });
+
+ package = pkgs.callPackage ({ stdenv, lib, fetchurl, fetchpatch
+ , autoreconfHook, pkg-config, intltool, glib, gnome2, gtk2, gfm
+ , libticables2, libticalcs2, libticonv, libtifiles2 }:
+
+ stdenv.mkDerivation rec {
+ pname = "tilp2";
+ version = "1.18";
+ src = fetchurl {
+ url = "mirror://sourceforge/tilp/${pname}-${version}.tar.bz2";
+ sha256 = "0isf73bjwk06baz2gm3vpdh600gqck9ca4aqxzb089dmxriv6fkv";
+ };
+
+ patches = fetchpatch {
+ name = "remove-broken-kde-support.patch";
+ url = "https://aur.archlinux.org/cgit/aur.git/plain/remove-broken-kde-support.patch?h=tilp";
+ sha256 = "1fn6vh7r45spkwpmkvffkbn7zrcsdrs5mjmspd5rwi3jc12cy3ny";
+ };
+
+ nativeBuildInputs = [ autoreconfHook pkg-config intltool ];
+
+ buildInputs = [
+ glib
+ gtk2
+ gnome2.libglade
+ gfm
+ libticables2
+ libticalcs2
+ libticonv
+ libtifiles2
+ ];
+
+ meta = with lib; {
+ changelog = "http://lpg.ticalc.org/prj_tilp/news.html";
+ description = "Transfer data between Texas Instruments graphing calculators and a computer";
+ homepage = "http://lpg.ticalc.org/prj_tilp/";
+ license = licenses.gpl2Plus;
+ platforms = with platforms; linux ++ darwin;
+ };
+ }) { };
+
+ shell = pkgs.writeShellApplication {
+ inherit name;
+ text = ''
+ /usr/bin/env --ignore-environment /bin/sh -c ${
+ pkgs.writeScript name ''
+ export PS1='\h (${name}) \W \$ '
+ export PATH=${pkgs.lib.strings.makeBinPath [ package pkgs.busybox ]}
+ /bin/sh
+ ''
+ };
+ '';
+ };
+
+in pkgs.mkShell {
+ inherit name package;
+ shellHook = "exec ${shell}/bin/${shell.name}";
+}