blah
This commit is contained in:
@@ -14,11 +14,7 @@ in {
|
||||
};
|
||||
|
||||
scrobbling = {
|
||||
enable = mkOption {
|
||||
description = "Enable scrobbling for MPD via mpdscribble.";
|
||||
type = types.bool;
|
||||
default = cfg.enable;
|
||||
};
|
||||
enable = mkEnableOption "Enable scrobbling for MPD via mpdscribble.";
|
||||
|
||||
endpoints = mkOption {
|
||||
type = types.attrsOf (types.submodule ({ ... }: {
|
||||
@@ -35,16 +31,22 @@ in {
|
||||
};
|
||||
|
||||
discord = {
|
||||
enable = mkOption {
|
||||
description = "Enable Discord integration for MPD via mpd-discord-rpc.";
|
||||
type = types.bool;
|
||||
default = cfg.enable;
|
||||
};
|
||||
enable =
|
||||
mkEnableOption "Discord integration for MPD via mpd-discord-rpc";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
sydnix.impermanence.directories =
|
||||
let xdg-state-dir =
|
||||
config.home.statehome
|
||||
or "${config.home.homeDirectory}/.local/state";
|
||||
in [
|
||||
(lib.removePrefix
|
||||
config.home.homeDirectory
|
||||
"${xdg-state-dir}/mpd")
|
||||
];
|
||||
services.mpd = {
|
||||
enable = true;
|
||||
musicDirectory = cfg.musicDirectory;
|
||||
|
||||
@@ -23,7 +23,7 @@ in {
|
||||
vesktop = {
|
||||
state.firstLaunch = false;
|
||||
settings = {
|
||||
discordBranch = "stable";
|
||||
discordBranch = "canary";
|
||||
minimizeToTray = false;
|
||||
arRPC = true;
|
||||
};
|
||||
|
||||
@@ -63,8 +63,9 @@
|
||||
(require 'syd-projects)
|
||||
(require 'syd-scratch)
|
||||
(require 'syd-smartparens)
|
||||
(require 'syd-snippets)
|
||||
(require 'syd-tabs)
|
||||
(require 'syd-tooling)
|
||||
(require 'syd-tramp)
|
||||
(require 'syd-trust)
|
||||
(require 'syd-ui)
|
||||
|
||||
|
||||
@@ -24,11 +24,12 @@
|
||||
;; Managed by Nix: libenchant dependency.
|
||||
:straight nil
|
||||
:commands (jinx-mode jinx-correct jinx-correct-word)
|
||||
:init (defun syd-jinx--jinx-or-ispell ()
|
||||
(interactive)
|
||||
(if (bound-and-true-p jinx-mode)
|
||||
(call-interactively #'jinx-correct-word)
|
||||
(call-interactively #'ispell-word)))
|
||||
:init
|
||||
(defun syd-jinx--jinx-or-ispell ()
|
||||
(interactive)
|
||||
(if (bound-and-true-p jinx-mode)
|
||||
(call-interactively #'jinx-correct-word)
|
||||
(call-interactively #'ispell-word)))
|
||||
:general (:states '(normal visual)
|
||||
"z =" #'syd-jinx--jinx-or-ispell)
|
||||
:config
|
||||
|
||||
@@ -72,7 +72,13 @@
|
||||
"r r" #'cider-ns-refresh
|
||||
"r R" #'cider-restart
|
||||
"r q" #'cider-quit
|
||||
"d d" #'cider-debug-defun-at-point
|
||||
"M-:" #'cider-read-and-eval
|
||||
"h d" #'cider-doc
|
||||
"h c" #'cider-cheatsheet)
|
||||
(:keymaps 'cider-repl-mode-map
|
||||
:states 'insert
|
||||
"S-<return>" #'cider-repl-newline-and-indent)
|
||||
:config
|
||||
(add-hook 'cider-mode-hook #'eldoc-mode)
|
||||
(add-hook 'cider-repl-mode-hook #'syd-lisp-mode)
|
||||
@@ -91,7 +97,9 @@
|
||||
(,(rx bol "*cider-doc*")
|
||||
:slot 2 :vslot -8 :quit t :select t)))
|
||||
;; DEPRECATED: Remove once syd-strategies is working.
|
||||
(syd-add-hook 'clojure-mode-hook
|
||||
(syd-add-hook '(clojure-mode-hook
|
||||
clojurescript-mode-hook
|
||||
cider-repl-mode-hook)
|
||||
(defun syd-clojure-set-handlers-h ()
|
||||
(setq-local syd-lookup-documentation-handlers
|
||||
(list #'cider-doc))))
|
||||
|
||||
9
modules/home/users/crumb/emacs/modules/syd-snippets.el
Normal file
9
modules/home/users/crumb/emacs/modules/syd-snippets.el
Normal file
@@ -0,0 +1,9 @@
|
||||
;;; syd-snippets.el -*- lexical-binding: t; -*-
|
||||
|
||||
(use-package yasnippet
|
||||
:hook (on-first-input . yas-global-mode))
|
||||
|
||||
(use-package yasnippet-snippets
|
||||
:after yasnippet)
|
||||
|
||||
(provide 'syd-snippets)
|
||||
7
modules/home/users/crumb/emacs/modules/syd-trust.el
Normal file
7
modules/home/users/crumb/emacs/modules/syd-trust.el
Normal file
@@ -0,0 +1,7 @@
|
||||
;;; syd-trust.el -*- lexical-binding: t; -*-
|
||||
|
||||
(setq safe-local-variable-directories
|
||||
(list "/persist/dots"
|
||||
(expand-file-name "~/org")))
|
||||
|
||||
(provide 'syd-trust)
|
||||
@@ -0,0 +1,27 @@
|
||||
;;; .yas-setup.el -*- lexical-binding: t; -*-
|
||||
|
||||
(require 'dash)
|
||||
(require 's)
|
||||
|
||||
(defun snippet-bibtex--make-id ()
|
||||
(let ((surname (--> (or (yas-field-value 2)
|
||||
"surname")
|
||||
(s-downcase it)
|
||||
(string-to-list it)
|
||||
(-take-while (lambda (x) (/= x ?,)) it)
|
||||
(-filter (lambda (x) (not (memq x '(?- ?\s)))) it)
|
||||
(apply #'string it)))
|
||||
(year (--> (or (yas-field-value 3)
|
||||
"1234")
|
||||
(string-to-list it)
|
||||
(-take-while (lambda (x) (<= ?0 x ?9)) it)
|
||||
(apply #'string it)))
|
||||
(keyword (or (-some--> (or (yas-field-value 1)
|
||||
"keyword")
|
||||
(s-downcase it)
|
||||
(s-split-words it)
|
||||
(-find (lambda (x)
|
||||
(not (member x '("the" "on" "of" "a" "when"))))
|
||||
it))
|
||||
"keyword")))
|
||||
(concat surname year keyword)))
|
||||
13
modules/home/users/crumb/emacs/snippets/bibtex-mode/@art
Normal file
13
modules/home/users/crumb/emacs/snippets/bibtex-mode/@art
Normal file
@@ -0,0 +1,13 @@
|
||||
# -*- mode: snippet -*-
|
||||
# name: Article
|
||||
# uuid:
|
||||
# key: @art
|
||||
# condition: t
|
||||
# --
|
||||
@article{${1:$(snippet-bibtex--make-id)}
|
||||
, title = {${1:Principia Mathematica}}
|
||||
, author = {${2:of Sinope, Diogenes}}
|
||||
, year = {${3:1992}}
|
||||
, url = {${4:https://example.com/}}
|
||||
, urldate = {${5:`(format-time-string "%Y-%m-%d")`}}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
# -*- mode: snippet -*-
|
||||
# name: foreign
|
||||
# uuid: haskell-foreign
|
||||
# key: foreign
|
||||
# condition: t
|
||||
# --
|
||||
|
||||
foreign import ccall unsafe "src/bridge.c $1"
|
||||
$1 :: $2
|
||||
21
modules/home/users/crumb/emacs/snippets/nix-mode/__module
Normal file
21
modules/home/users/crumb/emacs/snippets/nix-mode/__module
Normal file
@@ -0,0 +1,21 @@
|
||||
# -*- mode: snippet -*-
|
||||
# name: Nix module
|
||||
# uuid:
|
||||
# key: __module
|
||||
# condition: t
|
||||
# expand-env: ((yas-indent-line 'fixed) (yas-wrap-around-region 'nil) (this-current-file-name (file-name-base (buffer-file-name (current-buffer)))))
|
||||
# --
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let cfg = config.${1:`this-current-file-name`};
|
||||
in {
|
||||
options.$1 = {
|
||||
enable = mkEnableOption "$2";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
$3
|
||||
};
|
||||
}
|
||||
7
modules/home/users/crumb/emacs/snippets/nix-mode/enable
Normal file
7
modules/home/users/crumb/emacs/snippets/nix-mode/enable
Normal file
@@ -0,0 +1,7 @@
|
||||
# -*- mode: snippet -*-
|
||||
# name: enable
|
||||
# uuid:
|
||||
# key: enable
|
||||
# condition: t
|
||||
# --
|
||||
enable = lib.mkEnableOption "$1";
|
||||
@@ -100,7 +100,22 @@ in {
|
||||
};
|
||||
|
||||
profiles."msyds" = {
|
||||
bookmarks = [];
|
||||
bookmarks = {
|
||||
force = true;
|
||||
settings = [
|
||||
{
|
||||
name = "Nix";
|
||||
toolbar = true;
|
||||
bookmarks = [
|
||||
{
|
||||
name = "Home-manager options";
|
||||
tags = [ "nix" "docs" ];
|
||||
url = "https://nix-community.github.io/home-manager/options.xhtml";
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
# Check about:support for extension/add-on ID strings.
|
||||
extensions = {
|
||||
@@ -186,9 +201,9 @@ in {
|
||||
# Override non-declared settings.
|
||||
force = true;
|
||||
# Precedence of search engines.
|
||||
order = [ "Kagi" "DuckDuckGo" ];
|
||||
order = [ "Kagi" "ddg" ];
|
||||
default = "Kagi";
|
||||
privateDefault = "DuckDuckGo";
|
||||
privateDefault = "ddg";
|
||||
engines = {
|
||||
"Kagi" = {
|
||||
urls = [{
|
||||
@@ -198,6 +213,18 @@ in {
|
||||
];
|
||||
}];
|
||||
};
|
||||
"Nixopts" = {
|
||||
urls = [{
|
||||
template = "https://search.nixos.org/options";
|
||||
params = [
|
||||
{ name = "channel"; value = "unstable"; }
|
||||
{ name = "query"; value = "{searchTerms}"; }
|
||||
];
|
||||
}];
|
||||
icon =
|
||||
"${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||
definedAliases = [ "!no" ];
|
||||
};
|
||||
"Nixpkgs" = {
|
||||
urls = [{
|
||||
template = "https://search.nixos.org/packages";
|
||||
|
||||
@@ -14,26 +14,27 @@ in {
|
||||
|
||||
sydnix.mpd = {
|
||||
enable = true;
|
||||
scrobbling.endpoints = {
|
||||
"last.fm" = {
|
||||
passwordFile =
|
||||
"/home/crumb/.config/sops-nix/secrets/lastfm-password";
|
||||
username = "crumb1";
|
||||
};
|
||||
"libre.fm" = {
|
||||
passwordFile =
|
||||
"/home/crumb/.config/sops-nix/secrets/librefm-password";
|
||||
username = "crumbtoo";
|
||||
discord.enable = true;
|
||||
scrobbling = {
|
||||
enable = true;
|
||||
endpoints = {
|
||||
"last.fm" = {
|
||||
passwordFile =
|
||||
"/home/crumb/.config/sops-nix/secrets/lastfm-password";
|
||||
username = "crumb1";
|
||||
};
|
||||
"libre.fm" = {
|
||||
passwordFile =
|
||||
"/home/crumb/.config/sops-nix/secrets/librefm-password";
|
||||
username = "crumbtoo";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# mpdscribble uses our password files, so it is imperative that the service
|
||||
# Mpdscribble uses our password files, so it is imperative that the service
|
||||
# runs only after said password files are brought into existence. }:)
|
||||
systemd.user.services.mpdscribble.Unit = {
|
||||
After = [ "sops-nix.service" ];
|
||||
WantedBy = [ "mpd.service" ];
|
||||
};
|
||||
# systemd.user.services.mpdscribble.Unit.After = [ "sops-nix.service" ];
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ in {
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
stylix.targets.swaylock.enable = true;
|
||||
|
||||
|
||||
programs.niri = {
|
||||
# Activates some Nixpkgs patches to help run Electron applications under
|
||||
# Wayland.
|
||||
@@ -57,7 +57,7 @@ in {
|
||||
layout = {
|
||||
gaps = 8;
|
||||
# center-focused-column = "always";
|
||||
center-focused-column = "on-overflow";
|
||||
center-focused-column = "never";
|
||||
preset-column-widths = [
|
||||
{ proportion = 1.0 / 3.0; }
|
||||
{ proportion = 1.0 / 2.0; }
|
||||
@@ -91,6 +91,12 @@ in {
|
||||
size = 24;
|
||||
};
|
||||
window-rules = [
|
||||
{
|
||||
matches = [
|
||||
{ title = "Element.*wishdir"; }
|
||||
];
|
||||
block-out-from = "screen-capture";
|
||||
}
|
||||
{
|
||||
# This regular expression is intentionally made as specific as
|
||||
# possible, since this is the default config, and we want no false
|
||||
|
||||
Reference in New Issue
Block a user