mirror of
https://github.com/librephoenix/nixos-config
synced 2025-01-19 07:05:51 +05:30
Compare commits
6 commits
1d568ad213
...
9c6334f57e
Author | SHA1 | Date | |
---|---|---|---|
9c6334f57e | |||
73c5e63bab | |||
3cffd54525 | |||
7d2f529896 | |||
e8cccf10f0 | |||
372d7e4bbc |
64
flake.lock
64
flake.lock
|
@ -150,11 +150,11 @@
|
||||||
"blocklist-hosts": {
|
"blocklist-hosts": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710515083,
|
"lastModified": 1711027794,
|
||||||
"narHash": "sha256-3ve+IZzSpMigIIIW7x/WVSkm/5IyKb0ggFLcanbzskU=",
|
"narHash": "sha256-aT+e3dh4rRL0uKGY95tqwIHV31OM7Mv8kctpNpDaI88=",
|
||||||
"owner": "StevenBlack",
|
"owner": "StevenBlack",
|
||||||
"repo": "hosts",
|
"repo": "hosts",
|
||||||
"rev": "7c0ba20a0a205e3bf89a34d6fa5776980b3bec27",
|
"rev": "cf3c7f5740192c9ebaa7270e5e487c6fa0f47859",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -199,11 +199,11 @@
|
||||||
"eaf": {
|
"eaf": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710401124,
|
"lastModified": 1711033476,
|
||||||
"narHash": "sha256-9aIf/OEryv1gJ8oC1jX5dbPy0ZPhDgSfaan3PEVwwQc=",
|
"narHash": "sha256-4CPhEO4d66GzD3vOcNyRl6DmRDYiiIeRhX/9RUPZ+PM=",
|
||||||
"owner": "emacs-eaf",
|
"owner": "emacs-eaf",
|
||||||
"repo": "emacs-application-framework",
|
"repo": "emacs-application-framework",
|
||||||
"rev": "c71bf1fe0206964153a0b2e49149244c6b96f875",
|
"rev": "9bf8caba36e27fafcef5d8e68969a1a8eb5432ed",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -245,6 +245,21 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"emacs-pin-nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1707268954,
|
||||||
|
"narHash": "sha256-2en1kvde3cJVc3ZnTy8QeD2oKcseLFjYPLKhIGDanQ0=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "f8e2ebd66d097614d51a56a755450d4ae1632df1",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"id": "nixpkgs",
|
||||||
|
"rev": "f8e2ebd66d097614d51a56a755450d4ae1632df1",
|
||||||
|
"type": "indirect"
|
||||||
|
}
|
||||||
|
},
|
||||||
"emacs-so-long": {
|
"emacs-so-long": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
|
@ -466,11 +481,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710532761,
|
"lastModified": 1711122977,
|
||||||
"narHash": "sha256-SUXGZNrXX05YA9G6EmgupxhOr3swI1gcxLUeDMUhrEY=",
|
"narHash": "sha256-EnHux7wf7/7r+YMv8d/Ym1OTllp4sqqq0Bws1a4s2Zo=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "206f457fffdb9a73596a4cb2211a471bd305243d",
|
"rev": "19b87b9ae6ecfd81104a2a36ef8364f1de1b54b1",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -504,11 +519,11 @@
|
||||||
"hyprland-plugins": {
|
"hyprland-plugins": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710512163,
|
"lastModified": 1711047490,
|
||||||
"narHash": "sha256-bj3waHL6vTBWPw4f+vUdJ1MC5I8UWv2mNX3v/FPHBKQ=",
|
"narHash": "sha256-uyUenHmRzOdXajeYWA70C2+uzDeiqkiMcaBr3uKs28s=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprland-plugins",
|
"repo": "hyprland-plugins",
|
||||||
"rev": "50758aa0244372af3d6f058dce39970a8d96ce2d",
|
"rev": "adec334acfb453014cdff1e5f070bb7c1c4e4a9b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -597,11 +612,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710451336,
|
"lastModified": 1711001935,
|
||||||
"narHash": "sha256-pP86Pcfu3BrAvRO7R64x7hs+GaQrjFes+mEPowCfkxY=",
|
"narHash": "sha256-URtGpHue7HHZK0mrHnSf8wJ6OmMKYSsoLmJybrOLFSQ=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "d691274a972b3165335d261cc4671335f5c67de9",
|
"rev": "20f77aa09916374aa3141cbc605c955626762c9a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -612,11 +627,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710420202,
|
"lastModified": 1710951922,
|
||||||
"narHash": "sha256-MvFKESbq4rUWuaf2RKPNYENaSZEw/jaCLo2gU6oREcM=",
|
"narHash": "sha256-FOOBJ3DQenLpTNdxMHR2CpGZmYuctb92gF0lpiirZ30=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "878ef7d9721bee9f81f8a80819f9211ad1f993da",
|
"rev": "f091af045dff8347d66d186a62d42aceff159456",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -854,6 +869,7 @@
|
||||||
"blocklist-hosts": "blocklist-hosts",
|
"blocklist-hosts": "blocklist-hosts",
|
||||||
"eaf": "eaf",
|
"eaf": "eaf",
|
||||||
"eaf-browser": "eaf-browser",
|
"eaf-browser": "eaf-browser",
|
||||||
|
"emacs-pin-nixpkgs": "emacs-pin-nixpkgs",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"hyprland-plugins": "hyprland-plugins",
|
"hyprland-plugins": "hyprland-plugins",
|
||||||
"kdenlive-pin-nixpkgs": "kdenlive-pin-nixpkgs",
|
"kdenlive-pin-nixpkgs": "kdenlive-pin-nixpkgs",
|
||||||
|
@ -892,11 +908,11 @@
|
||||||
"nixpkgs": "nixpkgs_2"
|
"nixpkgs": "nixpkgs_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710555016,
|
"lastModified": 1711073443,
|
||||||
"narHash": "sha256-Lbdq3/TH4VrrR7A6FxIYwu5tFOcprYh8Q49Nc9s/i6c=",
|
"narHash": "sha256-PpNb4xq7U5Q/DdX40qe7CijUsqhVVM3VZrhN0+c6Lcw=",
|
||||||
"owner": "oxalica",
|
"owner": "oxalica",
|
||||||
"repo": "rust-overlay",
|
"repo": "rust-overlay",
|
||||||
"rev": "42baa9e2e4713572d7481f917243b07dffdf54b8",
|
"rev": "eec55ba9fcde6be4c63942827247e42afef7fafe",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -938,11 +954,11 @@
|
||||||
"nixpkgs": "nixpkgs_3"
|
"nixpkgs": "nixpkgs_3"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710420453,
|
"lastModified": 1711106191,
|
||||||
"narHash": "sha256-F/JfpPRpIkFqvYEtt55lZyaFd+/vhn9SrcQrXIZCkOU=",
|
"narHash": "sha256-WX1Tyb94jB3ksSQ5UtlTY/1UBsO7FlFNPjG3BXt9/0Q=",
|
||||||
"owner": "danth",
|
"owner": "danth",
|
||||||
"repo": "stylix",
|
"repo": "stylix",
|
||||||
"rev": "eb64377e66122de7a36ca7a611aa97ddf4c8e5e8",
|
"rev": "4da2d793e586f3f45a54fb9755ee9bf39d3cd52e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
13
flake.nix
13
flake.nix
|
@ -1,9 +1,10 @@
|
||||||
{
|
{
|
||||||
description = "Flake of LibrePhoenix";
|
description = "Flake of LibrePhoenix";
|
||||||
|
|
||||||
outputs = inputs@{ self, nixpkgs, nixpkgs-stable, kdenlive-pin-nixpkgs, home-manager, nix-doom-emacs,
|
outputs = inputs@{ self, nixpkgs, nixpkgs-stable, emacs-pin-nixpkgs, kdenlive-pin-nixpkgs,
|
||||||
nix-straight, stylix, blocklist-hosts, hyprland-plugins, rust-overlay,
|
home-manager, nix-doom-emacs, nix-straight, stylix, blocklist-hosts,
|
||||||
org-nursery, org-yaap, org-side-tree, org-timeblock, phscroll, ... }:
|
hyprland-plugins, rust-overlay, org-nursery, org-yaap, org-side-tree,
|
||||||
|
org-timeblock, phscroll, ... }:
|
||||||
let
|
let
|
||||||
# ---- SYSTEM SETTINGS ---- #
|
# ---- SYSTEM SETTINGS ---- #
|
||||||
systemSettings = {
|
systemSettings = {
|
||||||
|
@ -74,6 +75,10 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
pkgs-emacs = import emacs-pin-nixpkgs {
|
||||||
|
system = systemSettings.system;
|
||||||
|
};
|
||||||
|
|
||||||
pkgs-kdenlive = import kdenlive-pin-nixpkgs {
|
pkgs-kdenlive = import kdenlive-pin-nixpkgs {
|
||||||
system = systemSettings.system;
|
system = systemSettings.system;
|
||||||
};
|
};
|
||||||
|
@ -103,6 +108,7 @@
|
||||||
extraSpecialArgs = {
|
extraSpecialArgs = {
|
||||||
# pass config variables from above
|
# pass config variables from above
|
||||||
inherit pkgs-stable;
|
inherit pkgs-stable;
|
||||||
|
inherit pkgs-emacs;
|
||||||
inherit pkgs-kdenlive;
|
inherit pkgs-kdenlive;
|
||||||
inherit systemSettings;
|
inherit systemSettings;
|
||||||
inherit userSettings;
|
inherit userSettings;
|
||||||
|
@ -161,6 +167,7 @@
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "nixpkgs/nixos-unstable";
|
nixpkgs.url = "nixpkgs/nixos-unstable";
|
||||||
nixpkgs-stable.url = "nixpkgs/nixos-23.11";
|
nixpkgs-stable.url = "nixpkgs/nixos-23.11";
|
||||||
|
emacs-pin-nixpkgs.url = "nixpkgs/f8e2ebd66d097614d51a56a755450d4ae1632df1";
|
||||||
kdenlive-pin-nixpkgs.url = "nixpkgs/cfec6d9203a461d9d698d8a60ef003cac6d0da94";
|
kdenlive-pin-nixpkgs.url = "nixpkgs/cfec6d9203a461d9d698d8a60ef003cac6d0da94";
|
||||||
|
|
||||||
home-manager.url = "github:nix-community/home-manager/master";
|
home-manager.url = "github:nix-community/home-manager/master";
|
||||||
|
|
|
@ -76,7 +76,7 @@
|
||||||
users.users.${userSettings.username} = {
|
users.users.${userSettings.username} = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
description = userSettings.name;
|
description = userSettings.name;
|
||||||
extraGroups = [ "networkmanager" "wheel" ];
|
extraGroups = [ "networkmanager" "wheel" "input" "dialout" ];
|
||||||
packages = [];
|
packages = [];
|
||||||
uid = 1000;
|
uid = 1000;
|
||||||
};
|
};
|
||||||
|
|
|
@ -46,6 +46,7 @@
|
||||||
# Office
|
# Office
|
||||||
libreoffice-fresh
|
libreoffice-fresh
|
||||||
mate.atril
|
mate.atril
|
||||||
|
openboard
|
||||||
xournalpp
|
xournalpp
|
||||||
glib
|
glib
|
||||||
newsflash
|
newsflash
|
||||||
|
@ -56,6 +57,7 @@
|
||||||
openvpn
|
openvpn
|
||||||
protonmail-bridge
|
protonmail-bridge
|
||||||
texliveSmall
|
texliveSmall
|
||||||
|
numbat
|
||||||
|
|
||||||
wine
|
wine
|
||||||
bottles
|
bottles
|
||||||
|
@ -128,6 +130,9 @@
|
||||||
libmediainfo
|
libmediainfo
|
||||||
mediainfo-gui
|
mediainfo-gui
|
||||||
audio-recorder
|
audio-recorder
|
||||||
|
gnome.cheese
|
||||||
|
ardour
|
||||||
|
tenacity
|
||||||
|
|
||||||
# Various dev packages
|
# Various dev packages
|
||||||
texinfo
|
texinfo
|
||||||
|
|
|
@ -1246,7 +1246,7 @@ https://github.com/magit/magit/issues/460 (@cpitclaudel)."
|
||||||
"q" 'helpful-kill-buffers)
|
"q" 'helpful-kill-buffers)
|
||||||
|
|
||||||
;;;------ helpful configuration ------;;;
|
;;;------ helpful configuration ------;;;
|
||||||
(add-load-path! "~/.nix-profile/share/emacs/site-lisp/elpa/mu4e-1.12.1")
|
(add-load-path! "~/.nix-profile/share/emacs/site-lisp/elpa/mu4e-1.10.8")
|
||||||
(require 'mu4e)
|
(require 'mu4e)
|
||||||
(require 'mu4e-contrib)
|
(require 'mu4e-contrib)
|
||||||
(require 'mu4e-actions)
|
(require 'mu4e-actions)
|
||||||
|
|
|
@ -1,13 +1,19 @@
|
||||||
{ config, lib, pkgs, pkgs-stable, userSettings, systemSettings,
|
{ config, lib, pkgs-emacs, pkgs-stable, userSettings, systemSettings,
|
||||||
org-nursery, org-yaap, org-side-tree, org-timeblock, phscroll, ... }:
|
org-nursery, org-yaap, org-side-tree, org-timeblock, phscroll, ... }:
|
||||||
let
|
let
|
||||||
themePolarity = lib.removeSuffix "\n" (builtins.readFile (./. + "../../../../themes"+("/"+userSettings.theme)+"/polarity.txt"));
|
themePolarity = lib.removeSuffix "\n" (builtins.readFile (./. + "../../../../themes"+("/"+userSettings.theme)+"/polarity.txt"));
|
||||||
dashboardLogo = ./. + "/nix-" + themePolarity + ".png";
|
dashboardLogo = ./. + "/nix-" + themePolarity + ".png";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
imports = [
|
||||||
|
../git/git.nix
|
||||||
|
../../shell/sh.nix
|
||||||
|
../../shell/cli-collection.nix
|
||||||
|
];
|
||||||
|
|
||||||
programs.doom-emacs = {
|
programs.doom-emacs = {
|
||||||
enable = true;
|
enable = true;
|
||||||
emacsPackage = pkgs.emacs29-pgtk;
|
emacsPackage = pkgs-emacs.emacs29-pgtk;
|
||||||
doomPrivateDir = ./.;
|
doomPrivateDir = ./.;
|
||||||
# This block from https://github.com/znewman01/dotfiles/blob/be9f3a24c517a4ff345f213bf1cf7633713c9278/emacs/default.nix#L12-L34
|
# This block from https://github.com/znewman01/dotfiles/blob/be9f3a24c517a4ff345f213bf1cf7633713c9278/emacs/default.nix#L12-L34
|
||||||
# Only init/packages so we only rebuild when those change.
|
# Only init/packages so we only rebuild when those change.
|
||||||
|
@ -18,7 +24,7 @@ in
|
||||||
filter = path: type:
|
filter = path: type:
|
||||||
builtins.elem (baseNameOf path) [ "init.el" "packages.el" ];
|
builtins.elem (baseNameOf path) [ "init.el" "packages.el" ];
|
||||||
};
|
};
|
||||||
in pkgs.linkFarm "doom-packages-dir" [
|
in pkgs-emacs.linkFarm "doom-packages-dir" [
|
||||||
{
|
{
|
||||||
name = "init.el";
|
name = "init.el";
|
||||||
path = "${filteredPath}/init.el";
|
path = "${filteredPath}/init.el";
|
||||||
|
@ -29,7 +35,7 @@ in
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "config.el";
|
name = "config.el";
|
||||||
path = pkgs.emptyFile;
|
path = pkgs-emacs.emptyFile;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
# End block
|
# End block
|
||||||
|
@ -40,18 +46,16 @@ in
|
||||||
extension = ".el";
|
extension = ".el";
|
||||||
};
|
};
|
||||||
|
|
||||||
home.packages = (with pkgs; [
|
home.packages = (with pkgs-emacs; [
|
||||||
nil
|
nil
|
||||||
nixfmt
|
nixfmt
|
||||||
git
|
|
||||||
file
|
file
|
||||||
wmctrl
|
wmctrl
|
||||||
jshon
|
jshon
|
||||||
aria
|
aria
|
||||||
hledger
|
hledger
|
||||||
hunspell hunspellDicts.en_US-large
|
hunspell hunspellDicts.en_US-large
|
||||||
pandoc
|
(pkgs-emacs.mu.override { emacs = emacs29-pgtk; })
|
||||||
(pkgs.mu.override { emacs = emacs29-pgtk; })
|
|
||||||
emacsPackages.mu4e
|
emacsPackages.mu4e
|
||||||
isync
|
isync
|
||||||
msmtp
|
msmtp
|
||||||
|
@ -70,7 +74,7 @@ in
|
||||||
|
|
||||||
services.mbsync = {
|
services.mbsync = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.isync;
|
package = pkgs-stable.isync;
|
||||||
frequency = "*:0/5";
|
frequency = "*:0/5";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -1469,7 +1469,7 @@ I don't have this active right now since it's kinda weird with pgtk...
|
||||||
** mu4e Configuration
|
** mu4e Configuration
|
||||||
#+BEGIN_SRC emacs-lisp :tangle config.el
|
#+BEGIN_SRC emacs-lisp :tangle config.el
|
||||||
;;;------ helpful configuration ------;;;
|
;;;------ helpful configuration ------;;;
|
||||||
(add-load-path! "~/.nix-profile/share/emacs/site-lisp/elpa/mu4e-1.12.1")
|
(add-load-path! "~/.nix-profile/share/emacs/site-lisp/elpa/mu4e-1.10.8")
|
||||||
(require 'mu4e)
|
(require 'mu4e)
|
||||||
(require 'mu4e-contrib)
|
(require 'mu4e-contrib)
|
||||||
(require 'mu4e-actions)
|
(require 'mu4e-actions)
|
||||||
|
@ -1934,16 +1934,22 @@ Any git package can be configured for a particular commit or branch:
|
||||||
* Nix Integration
|
* Nix Integration
|
||||||
In order to have Nix load my Doom Emacs configuration [[./doom.nix][doom.nix]], which I source in the =imports= block of my [[../../../profiles/work/home.nix][home.nix]].
|
In order to have Nix load my Doom Emacs configuration [[./doom.nix][doom.nix]], which I source in the =imports= block of my [[../../../profiles/work/home.nix][home.nix]].
|
||||||
#+BEGIN_SRC nix :tangle doom.nix
|
#+BEGIN_SRC nix :tangle doom.nix
|
||||||
{ config, lib, pkgs, pkgs-stable, userSettings, systemSettings,
|
{ config, lib, pkgs-emacs, pkgs-stable, userSettings, systemSettings,
|
||||||
org-nursery, org-yaap, org-side-tree, org-timeblock, phscroll, ... }:
|
org-nursery, org-yaap, org-side-tree, org-timeblock, phscroll, ... }:
|
||||||
let
|
let
|
||||||
themePolarity = lib.removeSuffix "\n" (builtins.readFile (./. + "../../../../themes"+("/"+userSettings.theme)+"/polarity.txt"));
|
themePolarity = lib.removeSuffix "\n" (builtins.readFile (./. + "../../../../themes"+("/"+userSettings.theme)+"/polarity.txt"));
|
||||||
dashboardLogo = ./. + "/nix-" + themePolarity + ".png";
|
dashboardLogo = ./. + "/nix-" + themePolarity + ".png";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
imports = [
|
||||||
|
../git/git.nix
|
||||||
|
../../shell/sh.nix
|
||||||
|
../../shell/cli-collection.nix
|
||||||
|
];
|
||||||
|
|
||||||
programs.doom-emacs = {
|
programs.doom-emacs = {
|
||||||
enable = true;
|
enable = true;
|
||||||
emacsPackage = pkgs.emacs29-pgtk;
|
emacsPackage = pkgs-emacs.emacs29-pgtk;
|
||||||
doomPrivateDir = ./.;
|
doomPrivateDir = ./.;
|
||||||
# This block from https://github.com/znewman01/dotfiles/blob/be9f3a24c517a4ff345f213bf1cf7633713c9278/emacs/default.nix#L12-L34
|
# This block from https://github.com/znewman01/dotfiles/blob/be9f3a24c517a4ff345f213bf1cf7633713c9278/emacs/default.nix#L12-L34
|
||||||
# Only init/packages so we only rebuild when those change.
|
# Only init/packages so we only rebuild when those change.
|
||||||
|
@ -1954,7 +1960,7 @@ in
|
||||||
filter = path: type:
|
filter = path: type:
|
||||||
builtins.elem (baseNameOf path) [ "init.el" "packages.el" ];
|
builtins.elem (baseNameOf path) [ "init.el" "packages.el" ];
|
||||||
};
|
};
|
||||||
in pkgs.linkFarm "doom-packages-dir" [
|
in pkgs-emacs.linkFarm "doom-packages-dir" [
|
||||||
{
|
{
|
||||||
name = "init.el";
|
name = "init.el";
|
||||||
path = "${filteredPath}/init.el";
|
path = "${filteredPath}/init.el";
|
||||||
|
@ -1965,7 +1971,7 @@ in
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "config.el";
|
name = "config.el";
|
||||||
path = pkgs.emptyFile;
|
path = pkgs-emacs.emptyFile;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
# End block
|
# End block
|
||||||
|
@ -1976,18 +1982,16 @@ in
|
||||||
extension = ".el";
|
extension = ".el";
|
||||||
};
|
};
|
||||||
|
|
||||||
home.packages = (with pkgs; [
|
home.packages = (with pkgs-emacs; [
|
||||||
nil
|
nil
|
||||||
nixfmt
|
nixfmt
|
||||||
git
|
|
||||||
file
|
file
|
||||||
wmctrl
|
wmctrl
|
||||||
jshon
|
jshon
|
||||||
aria
|
aria
|
||||||
hledger
|
hledger
|
||||||
hunspell hunspellDicts.en_US-large
|
hunspell hunspellDicts.en_US-large
|
||||||
pandoc
|
(pkgs-emacs.mu.override { emacs = emacs29-pgtk; })
|
||||||
(pkgs.mu.override { emacs = emacs29-pgtk; })
|
|
||||||
emacsPackages.mu4e
|
emacsPackages.mu4e
|
||||||
isync
|
isync
|
||||||
msmtp
|
msmtp
|
||||||
|
@ -2006,7 +2010,7 @@ in
|
||||||
|
|
||||||
services.mbsync = {
|
services.mbsync = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.isync;
|
package = pkgs-stable.isync;
|
||||||
frequency = "*:0/5";
|
frequency = "*:0/5";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -20,9 +20,10 @@
|
||||||
pandoc
|
pandoc
|
||||||
hwinfo
|
hwinfo
|
||||||
pciutils
|
pciutils
|
||||||
|
numbat
|
||||||
(pkgs.callPackage ../pkgs/smartcalc.nix { })
|
(pkgs.callPackage ../pkgs/smartcalc.nix { })
|
||||||
(pkgs.writeShellScriptBin "sc" ''smartcalc'')
|
#(pkgs.writeShellScriptBin "sc" ''smartcalc'')
|
||||||
(pkgs.callPackage ../pkgs/pokemon-colorscripts.nix { })
|
#(pkgs.callPackage ../pkgs/pokemon-colorscripts.nix { })
|
||||||
#(pkgs.python3Packages.callPackage ../pkgs/impressive.nix { })
|
#(pkgs.python3Packages.callPackage ../pkgs/impressive.nix { })
|
||||||
(pkgs.writeShellScriptBin "airplane-mode" ''
|
(pkgs.writeShellScriptBin "airplane-mode" ''
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
|
@ -18,9 +18,9 @@ in
|
||||||
{
|
{
|
||||||
programs.zsh = {
|
programs.zsh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableAutosuggestions = true;
|
autosuggestion.enable = true;
|
||||||
enableCompletion = true;
|
|
||||||
syntaxHighlighting.enable = true;
|
syntaxHighlighting.enable = true;
|
||||||
|
enableCompletion = true;
|
||||||
shellAliases = myAliases;
|
shellAliases = myAliases;
|
||||||
initExtra = ''
|
initExtra = ''
|
||||||
PROMPT=" ◉ %U%F{magenta}%n%f%u@%U%F{blue}%m%f%u:%F{yellow}%~%f
|
PROMPT=" ◉ %U%F{magenta}%n%f%u@%U%F{blue}%m%f%u:%F{yellow}%~%f
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ config, lib, pkgs, userSettings, ... }:
|
{ config, lib, pkgs, userSettings, systemSettings, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
|
@ -7,10 +7,13 @@
|
||||||
(import ../../app/dmenu-scripts/networkmanager-dmenu.nix {
|
(import ../../app/dmenu-scripts/networkmanager-dmenu.nix {
|
||||||
dmenu_command = "fuzzel -d"; inherit config lib pkgs;
|
dmenu_command = "fuzzel -d"; inherit config lib pkgs;
|
||||||
})
|
})
|
||||||
(import ./hyprprofiles/hyprprofiles.nix {
|
../input/nihongo.nix
|
||||||
dmenuCmd = "fuzzel -d"; inherit config lib pkgs;
|
] ++
|
||||||
})
|
(if (systemSettings.profile == "personal") then
|
||||||
];
|
[ (import ./hyprprofiles/hyprprofiles.nix {
|
||||||
|
dmenuCmd = "fuzzel -d"; inherit config lib pkgs; })]
|
||||||
|
else
|
||||||
|
[]);
|
||||||
|
|
||||||
gtk.cursorTheme = {
|
gtk.cursorTheme = {
|
||||||
package = pkgs.quintom-cursor-theme;
|
package = pkgs.quintom-cursor-theme;
|
||||||
|
@ -110,6 +113,7 @@
|
||||||
bindm=SUPER,mouse:273,resizewindow
|
bindm=SUPER,mouse:273,resizewindow
|
||||||
bind=SUPER,T,togglefloating
|
bind=SUPER,T,togglefloating
|
||||||
bind=SUPER,G,exec,hyprworkspace 9; pegasus-fe;
|
bind=SUPER,G,exec,hyprworkspace 9; pegasus-fe;
|
||||||
|
bind=,code:148,exec,''+ userSettings.term + " "+''-e numbat
|
||||||
|
|
||||||
bind=,code:107,exec,grim -g "$(slurp)"
|
bind=,code:107,exec,grim -g "$(slurp)"
|
||||||
bind=SHIFT,code:107,exec,grim -g "$(slurp -o)"
|
bind=SHIFT,code:107,exec,grim -g "$(slurp -o)"
|
||||||
|
@ -223,9 +227,13 @@
|
||||||
monitor=HDMI-A-1,1920x1080,1920x0,1
|
monitor=HDMI-A-1,1920x1080,1920x0,1
|
||||||
monitor=DP-1,1920x1080,0x0,1
|
monitor=DP-1,1920x1080,0x0,1
|
||||||
|
|
||||||
# 2 monitor setup
|
# hdmi tv
|
||||||
#monitor=eDP-1,1920x1080,1920x0,1
|
#monitor=eDP-1,1920x1080,1920x0,1
|
||||||
#monitor=DP-1,1920x1200,0x0,1
|
#monitor=HDMI-A-1,1920x1080,0x0,1
|
||||||
|
|
||||||
|
# hdmi work projector
|
||||||
|
#monitor=eDP-1,1920x1080,1920x0,1
|
||||||
|
#monitor=HDMI-A-1,1920x1200,0x0,1
|
||||||
|
|
||||||
xwayland {
|
xwayland {
|
||||||
force_zero_scaling = true
|
force_zero_scaling = true
|
||||||
|
@ -244,6 +252,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
misc {
|
misc {
|
||||||
|
disable_hyprland_logo = true
|
||||||
mouse_move_enables_dpms = false
|
mouse_move_enables_dpms = false
|
||||||
}
|
}
|
||||||
decoration {
|
decoration {
|
||||||
|
@ -301,7 +310,7 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
imgname="/tmp/screenshot-ocr-$(date +%Y%m%d%H%M%S).png"
|
imgname="/tmp/screenshot-ocr-$(date +%Y%m%d%H%M%S).png"
|
||||||
txtname="/tmp/screenshot-ocr-$(date +%Y%m%d%H%M%S)"
|
txtname="/tmp/screenshot-ocr-$(date +%Y%m%d%H%M%S)"
|
||||||
txtfname="/tmp/screenshot-ocr-$(date +%Y%m%d%H%M%S).txt"
|
txtfname=$txtname.txt
|
||||||
grim -g "$(slurp)" $imgname;
|
grim -g "$(slurp)" $imgname;
|
||||||
tesseract $imgname $txtname;
|
tesseract $imgname $txtname;
|
||||||
wl-copy -n < $txtfname
|
wl-copy -n < $txtfname
|
||||||
|
@ -432,7 +441,7 @@
|
||||||
margin = "7 7 3 7";
|
margin = "7 7 3 7";
|
||||||
spacing = 2;
|
spacing = 2;
|
||||||
|
|
||||||
modules-left = [ "custom/os" "custom/hyprprofile" "battery" "backlight" "pulseaudio" "cpu" "memory" ];
|
modules-left = [ "custom/os" "custom/hyprprofile" "battery" "backlight" "keyboard-state" "pulseaudio" "cpu" "memory" ];
|
||||||
modules-center = [ "hyprland/workspaces" ];
|
modules-center = [ "hyprland/workspaces" ];
|
||||||
modules-right = [ "idle_inhibitor" "tray" "clock" ];
|
modules-right = [ "idle_inhibitor" "tray" "clock" ];
|
||||||
|
|
||||||
|
@ -447,6 +456,14 @@
|
||||||
"interval" = 3;
|
"interval" = 3;
|
||||||
"on-click" = "hyprprofile-dmenu";
|
"on-click" = "hyprprofile-dmenu";
|
||||||
};
|
};
|
||||||
|
"keyboard-state" = {
|
||||||
|
"numlock" = true;
|
||||||
|
"format" = " {icon} ";
|
||||||
|
"format-icons" = {
|
||||||
|
"locked" = "";
|
||||||
|
"unlocked" = "";
|
||||||
|
};
|
||||||
|
};
|
||||||
"hyprland/workspaces" = {
|
"hyprland/workspaces" = {
|
||||||
"format" = "{icon}";
|
"format" = "{icon}";
|
||||||
"format-icons" = {
|
"format-icons" = {
|
||||||
|
@ -702,6 +719,14 @@
|
||||||
color: #'' + config.lib.stylix.colors.base0A + '';
|
color: #'' + config.lib.stylix.colors.base0A + '';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
label.numlock {
|
||||||
|
color: #'' + config.lib.stylix.colors.base04 + '';
|
||||||
|
}
|
||||||
|
|
||||||
|
label.numlock.locked {
|
||||||
|
color: #'' + config.lib.stylix.colors.base0F + '';
|
||||||
|
}
|
||||||
|
|
||||||
#pulseaudio {
|
#pulseaudio {
|
||||||
color: #'' + config.lib.stylix.colors.base0C + '';
|
color: #'' + config.lib.stylix.colors.base0C + '';
|
||||||
}
|
}
|
||||||
|
@ -733,6 +758,7 @@
|
||||||
background-size: auto 100%;
|
background-size: auto 100%;
|
||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
services.udiskie.enable = true;
|
services.udiskie.enable = true;
|
||||||
services.udiskie.tray = "always";
|
services.udiskie.tray = "always";
|
||||||
programs.swaylock = {
|
programs.swaylock = {
|
||||||
|
|
111
user/wm/input/nihongo.nix
Normal file
111
user/wm/input/nihongo.nix
Normal file
|
@ -0,0 +1,111 @@
|
||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
i18n.inputMethod = {
|
||||||
|
enabled = "fcitx5";
|
||||||
|
fcitx5.addons = with pkgs; [
|
||||||
|
fcitx5-mozc
|
||||||
|
fcitx5-gtk
|
||||||
|
];
|
||||||
|
};
|
||||||
|
home.file.".config/fcitx5/config".text = ''
|
||||||
|
[Hotkey]
|
||||||
|
# Enumerate when press trigger key repeatedly
|
||||||
|
EnumerateWithTriggerKeys=True
|
||||||
|
# Temporally switch between first and current Input Method
|
||||||
|
AltTriggerKeys=
|
||||||
|
# Enumerate Input Method Forward
|
||||||
|
EnumerateForwardKeys=
|
||||||
|
# Enumerate Input Method Backward
|
||||||
|
EnumerateBackwardKeys=
|
||||||
|
# Skip first input method while enumerating
|
||||||
|
EnumerateSkipFirst=False
|
||||||
|
# Toggle embedded preedit
|
||||||
|
TogglePreedit=
|
||||||
|
|
||||||
|
[Hotkey/TriggerKeys]
|
||||||
|
0=Super+comma
|
||||||
|
|
||||||
|
[Hotkey/EnumerateGroupForwardKeys]
|
||||||
|
0=Super+space
|
||||||
|
|
||||||
|
[Hotkey/EnumerateGroupBackwardKeys]
|
||||||
|
0=Shift+Super+space
|
||||||
|
|
||||||
|
[Hotkey/ActivateKeys]
|
||||||
|
0=Hangul_Hanja
|
||||||
|
|
||||||
|
[Hotkey/DeactivateKeys]
|
||||||
|
0=Hangul_Romaja
|
||||||
|
|
||||||
|
[Hotkey/PrevPage]
|
||||||
|
0=Up
|
||||||
|
|
||||||
|
[Hotkey/NextPage]
|
||||||
|
0=Down
|
||||||
|
|
||||||
|
[Hotkey/PrevCandidate]
|
||||||
|
0=Shift+Tab
|
||||||
|
|
||||||
|
[Hotkey/NextCandidate]
|
||||||
|
0=Tab
|
||||||
|
|
||||||
|
[Behavior]
|
||||||
|
# Active By Default
|
||||||
|
ActiveByDefault=False
|
||||||
|
# Share Input State
|
||||||
|
ShareInputState=No
|
||||||
|
# Show preedit in application
|
||||||
|
PreeditEnabledByDefault=True
|
||||||
|
# Show Input Method Information when switch input method
|
||||||
|
ShowInputMethodInformation=True
|
||||||
|
# Show Input Method Information when changing focus
|
||||||
|
showInputMethodInformationWhenFocusIn=False
|
||||||
|
# Show compact input method information
|
||||||
|
CompactInputMethodInformation=True
|
||||||
|
# Show first input method information
|
||||||
|
ShowFirstInputMethodInformation=True
|
||||||
|
# Default page size
|
||||||
|
DefaultPageSize=5
|
||||||
|
# Override Xkb Option
|
||||||
|
OverrideXkbOption=False
|
||||||
|
# Custom Xkb Option
|
||||||
|
CustomXkbOption=
|
||||||
|
# Force Enabled Addons
|
||||||
|
EnabledAddons=
|
||||||
|
# Force Disabled Addons
|
||||||
|
DisabledAddons=
|
||||||
|
# Preload input method to be used by default
|
||||||
|
PreloadInputMethod=True
|
||||||
|
# Allow input method in the password field
|
||||||
|
AllowInputMethodForPassword=False
|
||||||
|
# Show preedit text when typing password
|
||||||
|
ShowPreeditForPassword=False
|
||||||
|
# Interval of saving user data in minutes
|
||||||
|
AutoSavePeriod=30
|
||||||
|
'';
|
||||||
|
home.file.".config/fcitx5/profile".text = ''
|
||||||
|
[Groups/0]
|
||||||
|
# Group Name
|
||||||
|
Name=Default
|
||||||
|
# Layout
|
||||||
|
Default Layout=us
|
||||||
|
# Default Input Method
|
||||||
|
DefaultIM=mozc
|
||||||
|
|
||||||
|
[Groups/0/Items/0]
|
||||||
|
# Name
|
||||||
|
Name=keyboard-us
|
||||||
|
# Layout
|
||||||
|
Layout=
|
||||||
|
|
||||||
|
[Groups/0/Items/1]
|
||||||
|
# Name
|
||||||
|
Name=mozc
|
||||||
|
# Layout
|
||||||
|
Layout=
|
||||||
|
|
||||||
|
[GroupOrder]
|
||||||
|
0=Default
|
||||||
|
'';
|
||||||
|
}
|
Loading…
Reference in a new issue