Browse Source

a whole buncha stuff

canon
Hazel Levine 8 months ago
parent
commit
8d35618176
Signed by: hazel
GPG Key ID: 1884029A28789A62
  1. 68
      config/doom/config.org
  2. 2
      config/doom/init.el
  3. 4
      config/doom/pakages.el
  4. 2
      configuration.nix
  5. 142
      flake.lock
  6. 20
      flake.nix
  7. 69
      modules/desktop/default.nix
  8. 5
      modules/desktop/gnome.nix
  9. 4
      modules/lang/default.nix
  10. 25
      modules/lang/lisp.nix
  11. 4
      modules/lang/ocaml.nix
  12. 2
      modules/system/pipewire.nix
  13. 2
      modules/tools/emacs.nix
  14. 8
      modules/tools/nix.nix
  15. 20
      packages/mopidy-pandora.nix

68
config/doom/config.org

@ -44,7 +44,7 @@ and options I want:
#+END_SRC
As my university education dragged on and I began to do things with formal logic,
I needed a font with good support for unicode characters. I use Source Sans Pro,
I needed a font with good support for unicode characters. I use Source Code Pro,
but with a bunch of fallbacks.
I've also disabled bold fonts because I cannot get them to render properly in
@ -459,6 +459,27 @@ Then copy straight from the Doom Agda module:
"q" #'agda2-quit
"r" #'agda2-restart))
#+END_SRC
** cooltt
😎
#+BEGIN_SRC emacs-lisp :tangle ~/.config/doom/packages.el
(package! cooltt
:recipe (:host github
:repo "RedPRL/cooltt"
:files ("emacs/*.el")))
#+END_SRC
#+BEGIN_SRC emacs-lisp
(use-package! cooltt
:config (setq cooltt-command "dune exec cooltt --"))
(add-hook! cooltt-mode
(activate-input-method "TeX"))
(map! :after cooltt-mode
:map cooltt-mode-map
:localleader
"l" #'cooltt-compile-buffer
"d" #'cooltt-toggle-debug)
#+END_SRC
** FRC Mode
This is a =gradlew= wrapper I hacked together really fast while sitting in my
physics class not paying attention. The officially sanctioned IDE for FIRST
@ -481,6 +502,35 @@ of FRC, so it's fine.
(use-package! frc-mode
:hook (java-mode . frc-mode))
#+END_SRC
** Lisp/symex.el
I used to use parinfer. I had a lot of issues with it. It stopped working.
Then, I used paredit, and had similar issues. It also stopped working.
Parinfer-rust is really broken for me.
Lisp is good, but when I copy-paste stuff in I have to disable it to re-match parentheses.
This is my final hope.
#+BEGIN_SRC emacs-lisp :tangle ~/.config/doom/packages.el
(package! symex)
#+END_SRC
#+BEGIN_SRC emacs-lisp
(use-package! symex
:config
(setq symex--user-evil-keyspec
'(("j" . symex-go-up)
("k" . symex-go-down)
("C-j" . symex-climb-branch)
("C-k" . symex-descend-branch)
("M-j" . symex-goto-highest)
("M-k" . symex-goto-lowest)))
(symex-initialize)
(map! :leader
:desc "Symex mode"
"~" #'symex-mode-interface)
:custom
(symex-modal-backend 'evil))
#+END_SRC
** =rust-analyzer=
I have tons of issues with RLS -- it just does NOT behave. While I have to pull
=rust-analyzer= from unstable nixpkgs, and it's marked as unstable all over the
@ -510,20 +560,8 @@ Then enable it. It takes care of the file extensions itself.
(use-package! scribble-mode)
#+END_SRC
** What
* What
Misc scraps. Most of these I don't remember the original purpose of.
#+BEGIN_SRC emacs-lisp
(map! "C-;" nil)
(defvar hzl/modeline-green "#c0e8c3")
(defvar hzl/modeline-red "#ffc8c8")
;; (custom-set-faces!
;; `(doom-modeline-info :foreground ,hzl/modeline-green)
;; `(doom-modeline-debug :foreground ,hzl/modeline-green)
;; `(doom-modeline-urgent :foreground ,hzl/modeline-red)
;; `(doom-modeline-buffer-minor-mode :foreground ,hzl/modeline-green)
;; `(doom-modeline-evil-motion-state :foreground ,hzl/modeline-green)
;; `(doom-modeline-evil-normal-state :foreground ,hzl/modeline-green)
;; `(doom-modeline-buffer-modified :foreground ,hzl/modeline-red)
;; `(doom-modeline-project-dir :foreground ,hzl/modeline-green))
#+END_SRC

2
config/doom/init.el

@ -29,7 +29,7 @@
:editor
(evil +everywhere)
file-templates
lispy
;; lispy
rotate-text
snippets

4
config/doom/pakages.el

@ -0,0 +1,4 @@
(package! cooltt-mode
:recipe (:host github
:repo "RedPRL/cooltt"
:files ("emacs/*.el")))

2
configuration.nix

@ -37,7 +37,7 @@
keyMap = "us";
};
time.timeZone = "America/Indiana/Indianapolis";
time.timeZone = "America/Chicago";
# the bare minimum
environment.systemPackages = with pkgs; [

142
flake.lock

@ -7,11 +7,11 @@
]
},
"locked": {
"lastModified": 1641576265,
"narHash": "sha256-G4W39k5hdu2kS13pi/RhyTOySAo7rmrs7yMUZRH0OZI=",
"lastModified": 1652712410,
"narHash": "sha256-hMJ2TqLt0DleEnQFGUHK9sV2aAzJPU8pZeiZoqRozbE=",
"owner": "ryantm",
"repo": "agenix",
"rev": "08b9c96878b2f9974fc8bde048273265ad632357",
"rev": "7e5e58b98c3dcbf497543ff6f22591552ebfe65b",
"type": "github"
},
"original": {
@ -37,28 +37,46 @@
}
},
"emacs-overlay": {
"inputs": {
"flake-utils": "flake-utils",
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1635818927,
"narHash": "sha256-q5mJS+2t4X67eqEua/k4HOhLfKCIvblfYWpB+DmOgA4=",
"lastModified": 1654082405,
"narHash": "sha256-WSnPVGD6GEqqYkhAwkWYBfBf6fz1GOdRnDtHMAMamKg=",
"owner": "nix-community",
"repo": "emacs-overlay",
"rev": "64580e3ac034e2704895a272f341a0729d165b93",
"rev": "0b120cc825715d594fa30a180924618ab2f54137",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "emacs-overlay",
"rev": "64580e3ac034e2704895a272f341a0729d165b93",
"type": "github"
}
},
"flake-utils": {
"locked": {
"lastModified": 1629481132,
"narHash": "sha256-JHgasjPR0/J1J3DRm4KxM4zTyAj4IOJY8vIl75v/kPI=",
"lastModified": 1653893745,
"narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_2": {
"locked": {
"lastModified": 1644229661,
"narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "997f7efcb746a9c140ce1f13c72263189225f482",
"rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797",
"type": "github"
},
"original": {
@ -74,27 +92,27 @@
]
},
"locked": {
"lastModified": 1642653493,
"narHash": "sha256-22mGPjiHUo2Jmze4IjXCJLjeK2mbvvCztHmUyUMr4yw=",
"lastModified": 1653937612,
"narHash": "sha256-HybwffYKOM3UwlY54ZVCZgX7o5xpp2KhbZyyOnvwFMo=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "28b9ae40c45c5e7711c353fee1b7af734e293979",
"rev": "bda2c80b4c1a8d85c84c343a25ac7303fbc7999d",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "release-21.11",
"ref": "release-22.05",
"repo": "home-manager",
"type": "github"
}
},
"nixos-hardware": {
"locked": {
"lastModified": 1641965797,
"narHash": "sha256-AfxfIzAZbt9aAzpVBn0Bwhd/M4Wix7G91kEjm9H6FPo=",
"lastModified": 1654057797,
"narHash": "sha256-mXo7C4v7Jj2feBzcReu1Eu/3Rnw5b023E9kOyFsHZQw=",
"owner": "nixos",
"repo": "nixos-hardware",
"rev": "87a35a0d58f546dc23f37b4f6af575d0e4be6a7a",
"rev": "0cab18a48de7914ef8cad35dca0bb36868f3e1af",
"type": "github"
},
"original": {
@ -105,18 +123,16 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1642609835,
"narHash": "sha256-ZwJnV4mdis28u5vH240ec2mrApuEJYJekn23qlTwJ8c=",
"owner": "nixos",
"lastModified": 1654007547,
"narHash": "sha256-G812EeXZeGeGjkAvbTleGwcKFCGxdLOQb9aViOWASPc=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "77aa71f66fd05d9e7b7d1c084865d703a8008ab7",
"rev": "5643714dea562f0161529ab23058562afeff46d0",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-21.11",
"repo": "nixpkgs",
"type": "github"
"id": "nixpkgs",
"type": "indirect"
}
},
"nixpkgs-21_05": {
@ -149,13 +165,29 @@
"type": "indirect"
}
},
"nixpkgs-for-mathematica": {
"locked": {
"lastModified": 1641240519,
"narHash": "sha256-c4HeaYPcvRoj45XUY3RWuoVCtpBOMF4NDur+B655SI8=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "c82b46413401efa740a0b994f52e9903a4f6dcd5",
"type": "github"
},
"original": {
"owner": "nixos",
"repo": "nixpkgs",
"rev": "c82b46413401efa740a0b994f52e9903a4f6dcd5",
"type": "github"
}
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1642336556,
"narHash": "sha256-QSPPbFEwy0T0DrIuSzAACkaANPQaR1lZR/nHZGz9z04=",
"lastModified": 1654007547,
"narHash": "sha256-G812EeXZeGeGjkAvbTleGwcKFCGxdLOQb9aViOWASPc=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "f3d9d4bd898cca7d04af2ae4f6ef01f2219df3d6",
"rev": "5643714dea562f0161529ab23058562afeff46d0",
"type": "github"
},
"original": {
@ -166,6 +198,22 @@
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1654005557,
"narHash": "sha256-J6elwUzPoco+r5qWPHhvS2EHVWomUtNcxzkfdAQOwEU=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "08950a6e29cf7bddee466592eb790a417550f7f9",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-22.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1626852498,
"narHash": "sha256-lOXUJvi0FJUXHTVSiC5qsMRtEUgqM4mGZpMESLuGhmo=",
@ -203,19 +251,19 @@
"emacs-overlay": "emacs-overlay",
"home-manager": "home-manager",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs",
"nixpkgs": "nixpkgs_2",
"nixpkgs-for-mathematica": "nixpkgs-for-mathematica",
"nixpkgs-unstable": "nixpkgs-unstable",
"perihelion": "perihelion",
"simple-nixos-mailserver": "simple-nixos-mailserver",
"utils": "utils_2",
"ziodyne-blog": "ziodyne-blog",
"zsh-syntax-highlighting": "zsh-syntax-highlighting"
}
},
"simple-nixos-mailserver": {
"inputs": {
"blobs": "blobs",
"nixpkgs": "nixpkgs_2",
"nixpkgs": "nixpkgs_3",
"nixpkgs-21_05": "nixpkgs-21_05",
"nixpkgs-21_11": "nixpkgs-21_11",
"utils": "utils"
@ -252,48 +300,30 @@
},
"utils_2": {
"inputs": {
"flake-utils": "flake-utils"
"flake-utils": "flake-utils_2"
},
"locked": {
"lastModified": 1632420560,
"narHash": "sha256-8Tsa4Hp/CHCA6J8/E7EODhp75z5N1NBhFiOb3lBv/tI=",
"lastModified": 1652704544,
"narHash": "sha256-UTKE33tYgCmDszaVyWA33a8mtegM5xfH4fH8w4y6TxA=",
"owner": "gytis-ivaskevicius",
"repo": "flake-utils-plus",
"rev": "4b1bcafcfcd78bd36ceabfe3872822ba5c7fcbe8",
"rev": "f8d6d1f87b6177e3bc674c29f247bdbf897ba274",
"type": "github"
},
"original": {
"owner": "gytis-ivaskevicius",
"ref": "v1.3.0",
"repo": "flake-utils-plus",
"type": "github"
}
},
"ziodyne-blog": {
"flake": false,
"locked": {
"lastModified": 1607612691,
"narHash": "sha256-TJcoArtj89fR2S+2p75Q9yOY4cosOe2zRC3A519Uap4=",
"ref": "canon",
"rev": "b0e7c984a7851145f30946091a93545d801db7ca",
"revCount": 17,
"type": "git",
"url": "https://git.bicompact.space/hazel/blog"
},
"original": {
"ref": "canon",
"type": "git",
"url": "https://git.bicompact.space/hazel/blog"
}
},
"zsh-syntax-highlighting": {
"flake": false,
"locked": {
"lastModified": 1636857900,
"narHash": "sha256-MeuPqDeJpbJi2hT7VUgyQNSmDPY/biUncvyY78IBfzM=",
"lastModified": 1652554093,
"narHash": "sha256-YV9lpJ0X2vN9uIdroDWEize+cp9HoKegS3sZiSpNk50=",
"owner": "zsh-users",
"repo": "zsh-syntax-highlighting",
"rev": "c7caf57ca805abd54f11f756fda6395dd4187f8a",
"rev": "caa749d030d22168445c4cb97befd406d2828db0",
"type": "github"
},
"original": {

20
flake.nix

@ -3,19 +3,20 @@
description = "maybe you'd have less problems if you weren't on a zoomer distro";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
nixpkgs.url = "github:nixos/nixpkgs/nixos-22.05";
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixpkgs-unstable";
utils.url = "github:gytis-ivaskevicius/flake-utils-plus/v1.3.0";
nixpkgs-for-mathematica.url = "github:nixos/nixpkgs?rev=c82b46413401efa740a0b994f52e9903a4f6dcd5";
utils.url = "github:gytis-ivaskevicius/flake-utils-plus";
home-manager = {
url = "github:nix-community/home-manager/release-21.11";
url = "github:nix-community/home-manager/release-22.05";
inputs.nixpkgs.follows = "nixpkgs";
};
agenix = {
url = "github:ryantm/agenix";
inputs.nixpkgs.follows = "nixpkgs";
};
emacs-overlay.url = "github:nix-community/emacs-overlay/64580e3ac034e2704895a272f341a0729d165b93";
emacs-overlay.url = "github:nix-community/emacs-overlay";
nixos-hardware.url = "github:nixos/nixos-hardware";
simple-nixos-mailserver.url = "gitlab:simple-nixos-mailserver/nixos-mailserver/nixos-21.11";
@ -28,16 +29,13 @@
url = "git+https://git.bicompact.space/hazel/perihelion?ref=canon";
flake = false;
};
ziodyne-blog = {
url = "git+https://git.bicompact.space/hazel/blog?ref=canon";
flake = false;
};
};
outputs = inputs@{ self,
utils,
nixpkgs,
nixpkgs-unstable,
nixpkgs-for-mathematica,
nixos-hardware,
home-manager,
agenix,
@ -47,6 +45,7 @@
supportedSystems = [ "x86_64-linux" ];
channels.just-mathematica.input = nixpkgs-for-mathematica;
channels.unstable.input = nixpkgs-unstable;
channels.nixpkgs = {
input = nixpkgs;
@ -55,12 +54,11 @@
overlaysBuilder =
channels: [
(final: prev: {
inherit (channels.unstable)
sage mathematica;
inherit (channels.just-mathematica)
mathematica;
hazel = {
perihelion = prev.callPackage (import inputs.perihelion) {};
ziodyne-blog = import inputs.ziodyne-blog;
};
})
];

69
modules/desktop/default.nix

@ -28,51 +28,50 @@ with lib; {
hazel.desktop.gtkTheme.enable = true;
hazel.desktop.firefox.enable = true;
programs.evolution = {
enable = true;
plugins = with pkgs; [ evolution-ews ];
};
programs.seahorse.enable = true;
services.gnome.evolution-data-server.enable = true;
hazel.home = {
home.packages = with pkgs; [
thunderbird
pavucontrol
networkmanagerapplet
imv
mpv
celluloid
nextcloud-client
libreoffice-fresh
betterdiscordctl
bitwarden
evince
zotero
brightnessctl
celluloid
dino
discord
dolphin-emu
element-desktop
tdesktop
mumble
zoom-us
teams
obs-studio
evince
gimp
soulseekqt
qbittorrent
wl-clipboard
jq
ponymix
brightnessctl
xorg.xrdb
steam-run
appimage-run
xboxdrv
minecraft
mcrcon
kdenlive
rmview
dolphin-emu
libreoffice-fresh
mathematica
mcrcon
melonDS
mpv
mumble
networkmanagerapplet
nextcloud-client
obs-studio
pavucontrol
picard
playonlinux # hell
mathematica
polymc
ponymix
qbittorrent
rmview
soulseekqt
tdesktop
wl-clipboard
xboxdrv
xorg.xrdb
zoom-us
zotero
];
services.gnome-keyring.enable = true;

5
modules/desktop/gnome.nix

@ -19,13 +19,14 @@ with lib; {
gnome.geary
gnome.gnome-maps
gnome.gnome-music
# gnome.gnome-terminal
gnome-console
gnome.totem
];
};
hazel.home.home.packages = with pkgs; [
gnome.gnome-tweak-tool
gnome.gnome-tweaks
gnome.gnome-terminal
evince
];

4
modules/lang/default.nix

@ -36,9 +36,9 @@ with lib; {
haskell.enable = true;
java.enable = true; # I FEEL NOTHING BUT PAIN
lisp.enable = true;
ocaml.enable = false;
ocaml.enable = true;
python.enable = true;
r.enable = true; # BORN TO DIE WORLD IS A FUCK
r.enable = false;
rust.enable = true;
scala.enable = false;
tex.enable = true;

25
modules/lang/lisp.nix

@ -42,13 +42,36 @@ with lib; {
"swindle"
];
libPath = lib.makeLibraryPath (with pkgs; [
cairo
fontconfig
glib
gmp
gtk3
gsettings-desktop-schemas
libedit
libGL
libGLU
libjpeg
libpng
mpfr
openssl
pango
poppler
readline
sqlite
# expeditor?
ncurses
]);
racketBinPath = "/home/hazel/src/racket/racket/bin/";
genScript = binName:
pkgs.writeScriptBin binName ''
#!/bin/sh
export LD_LIBRARY_PATH=${pkgs.racket.LD_LIBRARY_PATH}
export LD_LIBRARY_PATH=${libPath}
exec ${racketBinPath + binName} "$@"
'';
in

4
modules/lang/ocaml.nix

@ -19,8 +19,6 @@ with lib; {
hazel.home = {
home.packages = with pkgs; [
ocaml
opam
dune
m4
# any other dependencies in a nix-shell
@ -35,6 +33,8 @@ with lib; {
ocamlPackages.merlin
ocamlPackages.ocp-indent
];
programs.opam.enable = true;
};
};
}

2
modules/system/pipewire.nix

@ -15,7 +15,7 @@ with lib; {
support32Bit = true;
};
pulse.enable = true;
media-session.enable = true;
# media-session.enable = true;
};
security.rtkit.enable = true;

2
modules/tools/emacs.nix

@ -32,7 +32,7 @@ with lib; {
extraPackages = epkgs: [
epkgs.vterm # doom vterm module
];
package = pkgs.emacsPgtkGcc;
package = pkgs.emacsPgtkNativeComp;
};
# run the emacs daemon

8
modules/tools/nix.nix

@ -6,13 +6,7 @@
programs.direnv = {
enable = true;
enableZshIntegration = true;
stdlib = ''
use_flake() {
watch_file flake.nix
watch_file flake.lock
eval "$(nix print-dev-env --profile "$(direnv_layout_dir)/flake_profile")"
}
'';
enableFlakes = true;
};
home.packages = with pkgs; [

20
packages/mopidy-pandora.nix

@ -0,0 +1,20 @@
{ lib, buildPythonPackage, fetchPypi, mopidy }:
buildPythonPackage rec {
pname = "datashape";
version = "0.4.7";
src = fetchPypi {
inherit pname version;
sha256 = "14b2ef766d4c9652ab813182e866f493475e65e558bed0822e38bf07bba1a278";
};
propagatedBuildInputs = [ numpy multipledispatch python-dateutil ];
meta = with lib; {
homepage = "https://github.com/ContinuumIO/datashape";
description = "A data description language";
license = licenses.bsd2;
maintainers = with maintainers; [ fridh ];
};
}
Loading…
Cancel
Save