Compare commits
2 Commits
42751bf2f0
...
aaf6e6137f
Author | SHA1 | Date | |
---|---|---|---|
aaf6e6137f | |||
b3fd523e63 |
4
TODO.md
Normal file
4
TODO.md
Normal file
@ -0,0 +1,4 @@
|
||||
* [] Simplify config
|
||||
* [] Organize most common apps with modules
|
||||
* [] Migrate from pywal + apple-fonts to Stylix (theme, cursor, fonts, ...)
|
||||
* [] Remove clutter
|
@ -1,59 +1,42 @@
|
||||
{ mkDerivation,
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
python3,
|
||||
qtbase,
|
||||
qttools,
|
||||
wrapQtAppsHook,
|
||||
git,
|
||||
which,
|
||||
}:
|
||||
{ pkgs, stdenv, fetchFromGitHub }:
|
||||
|
||||
let
|
||||
myPython = python3.withPackages (pkgs: with pkgs; [ pyqt5 pyqtwebengine pyusb crcmod pyserial ]);
|
||||
in
|
||||
mkDerivation rec {
|
||||
pname = "ddt4all";
|
||||
version = "1.0.0"; # Replace with the actual version if necessary
|
||||
python = pkgs.python3.withPackages (pkgs: with pkgs; [ pyqt5 pyqtwebengine pyusb crcmod pyserial ]);
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "ddt4all";
|
||||
version = "1.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cedricp";
|
||||
repo = "ddt4all";
|
||||
rev = "master";
|
||||
sha256 = "sha256-EX7cobgxM8/o4cRmfMMDSYG9X9Av6zmoWlSv1nzfl5o=";
|
||||
};
|
||||
src = fetchFromGitHub {
|
||||
owner = "cedricp";
|
||||
repo = "ddt4all";
|
||||
rev = "master";
|
||||
sha256 = "sha256-1D1fnnFWxBV6sZkfbBc7a/7DSZvZtXeEYM9fRsQ7Ag0=";
|
||||
};
|
||||
|
||||
# If necessary, add patches to the source
|
||||
# patches = [ ./some_patch.patch ];
|
||||
nativeBuildInputs = [
|
||||
python
|
||||
pkgs.libsForQt5.qt5.wrapQtAppsHook
|
||||
pkgs.libsForQt5.qt5.qttools
|
||||
pkgs.which
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
myPython
|
||||
wrapQtAppsHook # This is useful for Qt apps
|
||||
qttools # Required for Qt applications
|
||||
which # For locating binaries (e.g., python3)
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
python
|
||||
pkgs.libsForQt5.qt5.qtbase
|
||||
pkgs.libsForQt5.qt5.qttools
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
myPython
|
||||
qtbase
|
||||
qttools
|
||||
];
|
||||
configurePhase = ''
|
||||
runHook preConfigure
|
||||
wrapQtAppsHook
|
||||
runHook postConfigure
|
||||
'';
|
||||
|
||||
#makeFlags = [ "PREFIX=$(out)" ];
|
||||
runScript = ''
|
||||
# Set up environment for running the app
|
||||
export LD_LIBRARY_PATH=${qtbase}/lib:${myPython}/lib:$LD_LIBRARY_PATH
|
||||
buildPhase = "";
|
||||
|
||||
if [ ! -d ".venv" ]; then
|
||||
python3 -m venv .venv
|
||||
source .venv/bin/activate
|
||||
pip install --upgrade pip
|
||||
pip install -r requirements.txt
|
||||
else
|
||||
source .venv/bin/activate
|
||||
fi
|
||||
|
||||
# Run the application
|
||||
python3 main.py
|
||||
'';
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp -r * $out/
|
||||
ln -s $out/main.py $out/bin/ddt4all
|
||||
'';
|
||||
}
|
||||
|
579
flake.lock
generated
579
flake.lock
generated
@ -3,16 +3,14 @@
|
||||
"ags": {
|
||||
"inputs": {
|
||||
"astal": "astal",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1736677288,
|
||||
"narHash": "sha256-Vj3WOLy6o6Zf44Rwg9eLqNRQPlVoDrQ89tsef3l3990=",
|
||||
"lastModified": 1738087375,
|
||||
"narHash": "sha256-GLyNtU9A2VN22jNRHZ2OXuFfTJLh8uEVVt+ftsKUX0c=",
|
||||
"owner": "Aylur",
|
||||
"repo": "ags",
|
||||
"rev": "90db9b9fecc0f4228440d83107c6c745a35e7d77",
|
||||
"rev": "a6a7a0adb17740f4c34a59902701870d46fbb6a4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -23,7 +21,7 @@
|
||||
},
|
||||
"apple-emoji": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs"
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1711624089,
|
||||
@ -41,19 +39,22 @@
|
||||
},
|
||||
"apple-fonts": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"ny": "ny",
|
||||
"sf-arabic": "sf-arabic",
|
||||
"sf-armenian": "sf-armenian",
|
||||
"sf-compact": "sf-compact",
|
||||
"sf-georgian": "sf-georgian",
|
||||
"sf-hebrew": "sf-hebrew",
|
||||
"sf-mono": "sf-mono",
|
||||
"sf-pro": "sf-pro"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1732029343,
|
||||
"narHash": "sha256-sAOEhA/vfyAKggwyI3PNy2xeNzb/USZl4YNpeSzMRBI=",
|
||||
"lastModified": 1740961576,
|
||||
"narHash": "sha256-9L6d3owtajM72YvUOpK1zYle2nM0BpsuopbF9lm9lJs=",
|
||||
"owner": "Lyndeno",
|
||||
"repo": "apple-fonts.nix",
|
||||
"rev": "714767021b57d0d30de35eb90e4b748fbbb9c99f",
|
||||
"rev": "4df58996ed654f6ce9b71b41c1826484c6870739",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -70,11 +71,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1735172721,
|
||||
"narHash": "sha256-rtEAwGsHSppnkR3Qg3eRJ6Xh/F84IY9CrBBLzYabalY=",
|
||||
"lastModified": 1737670815,
|
||||
"narHash": "sha256-ZCxxshGN7XooabArcoGkYSNx5yVunqjKJi2aTv6cznI=",
|
||||
"owner": "aylur",
|
||||
"repo": "astal",
|
||||
"rev": "6c84b64efc736e039a8a10774a4a1bf772c37aa2",
|
||||
"rev": "127e9cdcbf173846a3c40ddc0abfbb038df48042",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -83,6 +84,73 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16": {
|
||||
"inputs": {
|
||||
"fromYaml": "fromYaml"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1732200724,
|
||||
"narHash": "sha256-+R1BH5wHhfnycySb7Sy5KbYEaTJZWm1h+LW1OtyhiTs=",
|
||||
"owner": "SenchoPens",
|
||||
"repo": "base16.nix",
|
||||
"rev": "153d52373b0fb2d343592871009a286ec8837aec",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "SenchoPens",
|
||||
"repo": "base16.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16-fish": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1622559957,
|
||||
"narHash": "sha256-PebymhVYbL8trDVVXxCvZgc0S5VxI7I1Hv4RMSquTpA=",
|
||||
"owner": "tomyun",
|
||||
"repo": "base16-fish",
|
||||
"rev": "2f6dd973a9075dabccd26f1cded09508180bf5fe",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tomyun",
|
||||
"repo": "base16-fish",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16-helix": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1736852337,
|
||||
"narHash": "sha256-esD42YdgLlEh7koBrSqcT7p2fsMctPAcGl/+2sYJa2o=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-helix",
|
||||
"rev": "03860521c40b0b9c04818f2218d9cc9efc21e7a5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-helix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16-vim": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1732806396,
|
||||
"narHash": "sha256-e0bpPySdJf0F68Ndanwm+KWHgQiZ0s7liLhvJSWDNsA=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-vim",
|
||||
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-vim",
|
||||
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"fingerprint-sensor": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@ -104,6 +172,161 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"firefox-gnome-theme": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1741628778,
|
||||
"narHash": "sha256-RsvHGNTmO2e/eVfgYK7g+eYEdwwh7SbZa+gZkT24MEA=",
|
||||
"owner": "rafaelmardojai",
|
||||
"repo": "firefox-gnome-theme",
|
||||
"rev": "5a81d390bb64afd4e81221749ec4bffcbeb5fa80",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "rafaelmardojai",
|
||||
"repo": "firefox-gnome-theme",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat": {
|
||||
"locked": {
|
||||
"lastModified": 1733328505,
|
||||
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"stylix",
|
||||
"nur",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1733312601,
|
||||
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": [
|
||||
"stylix",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"fromYaml": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1731966426,
|
||||
"narHash": "sha256-lq95WydhbUTWig/JpqiB7oViTcHFP8Lv41IGtayokA8=",
|
||||
"owner": "SenchoPens",
|
||||
"repo": "fromYaml",
|
||||
"rev": "106af9e2f715e2d828df706c386a685698f3223b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "SenchoPens",
|
||||
"repo": "fromYaml",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"git-hooks": {
|
||||
"inputs": {
|
||||
"flake-compat": [
|
||||
"stylix",
|
||||
"flake-compat"
|
||||
],
|
||||
"gitignore": "gitignore",
|
||||
"nixpkgs": [
|
||||
"stylix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1741379162,
|
||||
"narHash": "sha256-srpAbmJapkaqGRE3ytf3bj4XshspVR5964OX5LfjDWc=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "b5a62751225b2f62ff3147d0a334055ebadcd5cc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gitignore": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"stylix",
|
||||
"git-hooks",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709087332,
|
||||
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gnome-shell": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1732369855,
|
||||
"narHash": "sha256-JhUWbcYPjHO3Xs3x9/Z9RuqXbcp5yhPluGjwsdE2GMg=",
|
||||
"owner": "GNOME",
|
||||
"repo": "gnome-shell",
|
||||
"rev": "dadd58f630eeea41d645ee225a63f719390829dc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "GNOME",
|
||||
"ref": "47.2",
|
||||
"repo": "gnome-shell",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@ -111,11 +334,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1736373539,
|
||||
"narHash": "sha256-dinzAqCjenWDxuy+MqUQq0I4zUSfaCvN9rzuCmgMZJY=",
|
||||
"lastModified": 1739757849,
|
||||
"narHash": "sha256-Gs076ot1YuAAsYVcyidLKUMIc4ooOaRGO0PqTY7sBzA=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "bd65bc3cde04c16755955630b344bc9e35272c56",
|
||||
"rev": "9d3d080aec2a35e05a15cedd281c2384767c2cfe",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -125,13 +348,34 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"stylix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1741635347,
|
||||
"narHash": "sha256-2aYfV44h18alHXopyfL4D9GsnpE5XlSVkp4MGe586VU=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "7fb8678716c158642ac42f9ff7a18c0800fea551",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1711523803,
|
||||
"narHash": "sha256-UKcYiHWHQynzj6CN/vTcix4yd1eCu1uFdsuarupdCQQ=",
|
||||
"lastModified": 1742422364,
|
||||
"narHash": "sha256-mNqIplmEohk5jRkqYqG19GA8MbQ/D4gQSK0Mu4LvfRQ=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "2726f127c15a4cc9810843b96cad73c7eb39e443",
|
||||
"rev": "a84ebe20c6bc2ecbcfb000a50776219f48d134cc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -143,11 +387,11 @@
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1731319897,
|
||||
"narHash": "sha256-PbABj4tnbWFMfBp6OcUK5iGy1QY+/Z96ZcLpooIbuEI=",
|
||||
"lastModified": 1742422364,
|
||||
"narHash": "sha256-mNqIplmEohk5jRkqYqG19GA8MbQ/D4gQSK0Mu4LvfRQ=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "dc460ec76cbff0e66e269457d7b728432263166c",
|
||||
"rev": "a84ebe20c6bc2ecbcfb000a50776219f48d134cc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -159,11 +403,27 @@
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1736549401,
|
||||
"narHash": "sha256-ibkQrMHxF/7TqAYcQE+tOnIsSEzXmMegzyBWza6uHKM=",
|
||||
"lastModified": 1742422364,
|
||||
"narHash": "sha256-mNqIplmEohk5jRkqYqG19GA8MbQ/D4gQSK0Mu4LvfRQ=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "a84ebe20c6bc2ecbcfb000a50776219f48d134cc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1741862977,
|
||||
"narHash": "sha256-prZ0M8vE/ghRGGZcflvxCu40ObKaB+ikn74/xQoNrGQ=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "1dab772dd4a68a7bba5d9460685547ff8e17d899",
|
||||
"rev": "cdd2ef009676ac92b715ff26630164bb88fec4e0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -173,6 +433,79 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1742422364,
|
||||
"narHash": "sha256-mNqIplmEohk5jRkqYqG19GA8MbQ/D4gQSK0Mu4LvfRQ=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "a84ebe20c6bc2ecbcfb000a50776219f48d134cc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_6": {
|
||||
"locked": {
|
||||
"lastModified": 1741513245,
|
||||
"narHash": "sha256-7rTAMNTY1xoBwz0h7ZMtEcd8LELk9R5TzBPoHuhNSCk=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "e3e32b642a31e6714ec1b712de8c91a3352ce7e1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nordvpn": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_5"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1742098294,
|
||||
"narHash": "sha256-kszMKykXU1oZIn8RSDuBwIa5hY5om2wdy32KYgYKzs8=",
|
||||
"owner": "m-lourenco0",
|
||||
"repo": "nordvpn-flake",
|
||||
"rev": "72594cb60df19951ee726dcad24ef0a9c5d29fbc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "m-lourenco0",
|
||||
"repo": "nordvpn-flake",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nur": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts",
|
||||
"nixpkgs": [
|
||||
"stylix",
|
||||
"nixpkgs"
|
||||
],
|
||||
"treefmt-nix": "treefmt-nix"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1741693509,
|
||||
"narHash": "sha256-emkxnsZstiJWmGACimyAYqIKz2Qz5We5h1oBVDyQjLw=",
|
||||
"owner": "nix-community",
|
||||
"repo": "NUR",
|
||||
"rev": "5479646b2574837f1899da78bdf9a48b75a9fb27",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "NUR",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"ny": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
@ -192,7 +525,9 @@
|
||||
"apple-fonts": "apple-fonts",
|
||||
"fingerprint-sensor": "fingerprint-sensor",
|
||||
"home-manager": "home-manager",
|
||||
"nixpkgs": "nixpkgs_3"
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"nordvpn": "nordvpn",
|
||||
"stylix": "stylix"
|
||||
}
|
||||
},
|
||||
"sf-arabic": {
|
||||
@ -207,6 +542,18 @@
|
||||
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Arabic.dmg"
|
||||
}
|
||||
},
|
||||
"sf-armenian": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"narHash": "sha256-rRoDkbNMYkzOHZmQm96Zv80TZvRlAeoxkv4pMHP5nUg=",
|
||||
"type": "file",
|
||||
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Armenian.dmg"
|
||||
},
|
||||
"original": {
|
||||
"type": "file",
|
||||
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Armenian.dmg"
|
||||
}
|
||||
},
|
||||
"sf-compact": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
@ -219,6 +566,30 @@
|
||||
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Compact.dmg"
|
||||
}
|
||||
},
|
||||
"sf-georgian": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"narHash": "sha256-IevVNOC28IiR45YfI3PsZzXLMRxuB5u7UiE53Zn6tRU=",
|
||||
"type": "file",
|
||||
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Georgian.dmg"
|
||||
},
|
||||
"original": {
|
||||
"type": "file",
|
||||
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Georgian.dmg"
|
||||
}
|
||||
},
|
||||
"sf-hebrew": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"narHash": "sha256-Dw84kYwMpCtKKKqm8cZcQ9TZ7GayU5MO7W0LJw0Rcwk=",
|
||||
"type": "file",
|
||||
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Hebrew.dmg"
|
||||
},
|
||||
"original": {
|
||||
"type": "file",
|
||||
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Hebrew.dmg"
|
||||
}
|
||||
},
|
||||
"sf-mono": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
@ -242,6 +613,160 @@
|
||||
"type": "file",
|
||||
"url": "https://devimages-cdn.apple.com/design/resources/download/SF-Pro.dmg"
|
||||
}
|
||||
},
|
||||
"stylix": {
|
||||
"inputs": {
|
||||
"base16": "base16",
|
||||
"base16-fish": "base16-fish",
|
||||
"base16-helix": "base16-helix",
|
||||
"base16-vim": "base16-vim",
|
||||
"firefox-gnome-theme": "firefox-gnome-theme",
|
||||
"flake-compat": "flake-compat",
|
||||
"flake-utils": "flake-utils",
|
||||
"git-hooks": "git-hooks",
|
||||
"gnome-shell": "gnome-shell",
|
||||
"home-manager": "home-manager_2",
|
||||
"nixpkgs": "nixpkgs_6",
|
||||
"nur": "nur",
|
||||
"systems": "systems",
|
||||
"tinted-foot": "tinted-foot",
|
||||
"tinted-kitty": "tinted-kitty",
|
||||
"tinted-schemes": "tinted-schemes",
|
||||
"tinted-tmux": "tinted-tmux",
|
||||
"tinted-zed": "tinted-zed"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1742591463,
|
||||
"narHash": "sha256-CguaHULcm4RuIGN+i4u80dYZujFgZaeOTiShFxCwFhw=",
|
||||
"owner": "danth",
|
||||
"repo": "stylix",
|
||||
"rev": "113643f332e1f70d90991722f8c4e5a0ace6fd06",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "danth",
|
||||
"repo": "stylix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-foot": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1726913040,
|
||||
"narHash": "sha256-+eDZPkw7efMNUf3/Pv0EmsidqdwNJ1TaOum6k7lngDQ=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-foot",
|
||||
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-foot",
|
||||
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-kitty": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1716423189,
|
||||
"narHash": "sha256-2xF3sH7UIwegn+2gKzMpFi3pk5DlIlM18+vj17Uf82U=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-kitty",
|
||||
"rev": "eb39e141db14baef052893285df9f266df041ff8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-kitty",
|
||||
"rev": "eb39e141db14baef052893285df9f266df041ff8",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-schemes": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1741468895,
|
||||
"narHash": "sha256-YKM1RJbL68Yp2vESBqeZQBjTETXo8mCTTzLZyckCfZk=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "schemes",
|
||||
"rev": "47c8c7726e98069cade5827e5fb2bfee02ce6991",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "schemes",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-tmux": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1740877430,
|
||||
"narHash": "sha256-zWcCXgdC4/owfH/eEXx26y5BLzTrefjtSLFHWVD5KxU=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-tmux",
|
||||
"rev": "d48ee86394cbe45b112ba23ab63e33656090edb4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-tmux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-zed": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1725758778,
|
||||
"narHash": "sha256-8P1b6mJWyYcu36WRlSVbuj575QWIFZALZMTg5ID/sM4=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-zed",
|
||||
"rev": "122c9e5c0e6f27211361a04fae92df97940eccf9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-zed",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"treefmt-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"stylix",
|
||||
"nur",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1733222881,
|
||||
"narHash": "sha256-JIPcz1PrpXUCbaccEnrcUS8jjEb/1vJbZz5KkobyFdM=",
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"rev": "49717b5af6f80172275d47a418c9719a31a78b53",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
26
flake.nix
26
flake.nix
@ -1,23 +1,19 @@
|
||||
{
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11";
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11";
|
||||
stylix.url = "github:danth/stylix";
|
||||
|
||||
home-manager.url = "github:nix-community/home-manager/release-24.11";
|
||||
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
||||
apple-fonts.url = "github:Lyndeno/apple-fonts.nix";
|
||||
apple-emoji.url = "github:oxcl/apple-emoji-nix";
|
||||
|
||||
ags = {
|
||||
url = "github:Aylur/ags";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager/release-24.11";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
fingerprint-sensor = {
|
||||
url = "github:ahbnr/nixos-06cb-009a-fingerprint-sensor/24.11";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
nordvpn.url = "github:m-lourenco0/nordvpn-flake";
|
||||
ags.url = "github:Aylur/ags";
|
||||
|
||||
fingerprint-sensor.url = "github:ahbnr/nixos-06cb-009a-fingerprint-sensor/24.11";
|
||||
fingerprint-sensor.inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
outputs = { self, ... }: {
|
||||
|
@ -6,7 +6,6 @@
|
||||
./programs.nix
|
||||
./users.nix
|
||||
./networking.nix
|
||||
./fonts.nix
|
||||
];
|
||||
|
||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||
|
@ -2,8 +2,11 @@
|
||||
|
||||
{
|
||||
imports = [
|
||||
../../modules/greetd.nix
|
||||
../../modules/nvidia-support.nix
|
||||
../../modules/fingerprint.nix
|
||||
../../modules/apple-style.nix
|
||||
../../modules/bluetooth.nix
|
||||
../../modules/greetd.nix
|
||||
inputs.nordvpn.nixosModules.nordvpn
|
||||
];
|
||||
}
|
||||
|
@ -5,19 +5,8 @@ let
|
||||
wirelessEnabled = false;
|
||||
in {
|
||||
networking.networkmanager.enable = pkgs.lib.mkIf networkManagerEnabled true;
|
||||
networking.networkmanager.wifi.powersave = pkgs.lib.mkIf networkManagerEnabled true;
|
||||
|
||||
networking.wireless.enable = pkgs.lib.mkIf wirelessEnabled true;
|
||||
networking.wireless.userControlled.enable = pkgs.lib.mkIf wirelessEnabled true;
|
||||
|
||||
networking.firewall = {
|
||||
trustedInterfaces = [ "p2p-wl+" ];
|
||||
allowedTCPPorts = [
|
||||
7236
|
||||
7250
|
||||
];
|
||||
allowedUDPPorts = [
|
||||
7236
|
||||
5353
|
||||
];
|
||||
};
|
||||
}
|
||||
|
@ -2,12 +2,15 @@
|
||||
|
||||
{
|
||||
services.greetd-hyprland.enable = true;
|
||||
services.nvidia.enable = true;
|
||||
services.apple-style.enable = true;
|
||||
services.bluetooth.enable = true;
|
||||
services.nvidia.enable = true;
|
||||
services.fingerprint-fix = {
|
||||
enable = true;
|
||||
calibDataFile = ./calib-data.bin;
|
||||
};
|
||||
|
||||
services.nordvpn.enable = true;
|
||||
services.upower.enable = true;
|
||||
services.udev.enable = true;
|
||||
services.udev.packages = [ pkgs.hyprland ];
|
||||
@ -17,21 +20,7 @@
|
||||
drivers = with pkgs; [ hplipWithPlugin ];
|
||||
};
|
||||
|
||||
security.rtkit.enable = true;
|
||||
systemd.services.bluetooth.serviceConfig.ExecStart = pkgs.lib.mkForce [
|
||||
""
|
||||
"${pkgs.bluez}/libexec/bluetooth/bluetoothd -f /etc/bluetooth/main.conf -C"
|
||||
];
|
||||
|
||||
services.gvfs.enable = true;
|
||||
services.tlp = {
|
||||
enable = true;
|
||||
settings = {
|
||||
START_CHARGE_THRESH_BAT0 = 40;
|
||||
STOP_CHARGE_THRESH_BAT0 = 80;
|
||||
};
|
||||
};
|
||||
|
||||
services.geoclue2 = {
|
||||
enableWifi = true;
|
||||
geoProviderUrl = "https://api.beacondb.net/v1/geolocate";
|
||||
@ -45,12 +34,4 @@
|
||||
pulse.enable = true;
|
||||
jack.enable = true;
|
||||
};
|
||||
|
||||
hardware.bluetooth = {
|
||||
enable = true;
|
||||
powerOnBoot = true;
|
||||
};
|
||||
|
||||
services.blueman.enable = true;
|
||||
hardware.enableAllFirmware = true;
|
||||
}
|
||||
|
@ -9,8 +9,10 @@ in {
|
||||
isNormalUser = true;
|
||||
description = fullname;
|
||||
home = "/home/${username}";
|
||||
extraGroups = [ "wheel" "networkmanager" "plugdev" "adbusers" ];
|
||||
extraGroups = [ "wheel" "networkmanager" "plugdev" "adbusers" "nordvpn" ];
|
||||
shell = preferredShell;
|
||||
ignoreShellProgramCheck = true; # Will do it later in profile configuration
|
||||
};
|
||||
|
||||
users.users.nordvpn.extraGroups = [ "networkmanager" ];
|
||||
}
|
||||
|
23
modules/apple-style.nix
Normal file
23
modules/apple-style.nix
Normal file
@ -0,0 +1,23 @@
|
||||
{ config, lib, pkgs, inputs, ... }:
|
||||
|
||||
{
|
||||
options.services.apple-style.enable = lib.mkEnableOption "Enable Apple fonts and emojis";
|
||||
|
||||
config = lib.mkIf config.services.apple-style.enable {
|
||||
fonts.fontDir.enable = true;
|
||||
fonts.packages = [
|
||||
inputs.apple-emoji.packages.${pkgs.system}.apple-emoji-nix
|
||||
inputs.apple-fonts.packages.${pkgs.system}.sf-pro-nerd
|
||||
inputs.apple-fonts.packages.${pkgs.system}.sf-mono-nerd
|
||||
];
|
||||
|
||||
fonts.fontconfig.enable = true;
|
||||
fonts.enableDefaultPackages = false;
|
||||
fonts.fontconfig.defaultFonts = {
|
||||
sansSerif = [ "SFProText Nerd Font" "SFProDisplay Nerd Font" ];
|
||||
serif = [ "SFProText Nerd Font" "SFProDisplay Nerd Font" ];
|
||||
monospace = [ "SFMono Nerd Font" ];
|
||||
emoji = [ "Apple Color Emoji" ];
|
||||
};
|
||||
};
|
||||
}
|
17
modules/bluetooth.nix
Normal file
17
modules/bluetooth.nix
Normal file
@ -0,0 +1,17 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
options.services.bluetooth.enable = lib.mkEnableOption "Enable Bluetooth";
|
||||
|
||||
config = lib.mkIf config.services.bluetooth.enable {
|
||||
# add compatibility layer
|
||||
systemd.services.bluetooth.serviceConfig.ExecStart = lib.mkForce [
|
||||
""
|
||||
"${pkgs.bluez}/libexec/bluetooth/bluetoothd -f /etc/bluetooth/main.conf -C"
|
||||
];
|
||||
|
||||
hardware.bluetooth.enable = true;
|
||||
hardware.bluetooth.powerOnBoot = true;
|
||||
services.blueman.enable = true;
|
||||
};
|
||||
}
|
@ -1,70 +1,51 @@
|
||||
{ pkgs, inputs, ... }:
|
||||
|
||||
let
|
||||
ddt4all = pkgs.stdenv.mkDerivation {
|
||||
name = "ddt4all";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "cedricp";
|
||||
repo = "ddt4all";
|
||||
rev = "master";
|
||||
sha256 = "sha256-EX7cobgxM8/o4cRmfMMDSYG9X9Av6zmoWlSv1nzfl5o=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgs.git ];
|
||||
buildInputs = [ pkgs.stdenv.cc.cc.lib ];
|
||||
{
|
||||
imports = [
|
||||
inputs.ags.homeManagerModules.default
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
hyprland hyprlock hypridle hyprshot wl-clipboard cliphist swww
|
||||
pywal pywalfox-native
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/DDT4ALL
|
||||
cp -r * $out/DDT4ALL
|
||||
'';
|
||||
};
|
||||
in {
|
||||
imports = [ inputs.ags.homeManagerModules.default ];
|
||||
home = {
|
||||
activation.ddt4all = pkgs.lib.mkAfter ''
|
||||
if [ ! -d "$HOME/DDT4ALL" ]; then
|
||||
cp -r ${ddt4all}/DDT4ALL $HOME/DDT4ALL
|
||||
fi
|
||||
'';
|
||||
packages = with pkgs; [
|
||||
hyprland hyprlock hypridle hyprshot wl-clipboard cliphist swww
|
||||
pywal pywalfox-native
|
||||
(python3.withPackages (py: with py; [
|
||||
pywayland
|
||||
]))
|
||||
|
||||
(python3.withPackages (py: with py; [
|
||||
pywayland
|
||||
]))
|
||||
inputs.nordvpn.packages.${system}.nordvpn
|
||||
(pkgs.callPackage ../../derivations/ddt4all.nix {})
|
||||
|
||||
(birdtray.overrideAttrs (_: {
|
||||
cmakeFlags = [ "-DOPT_THUNDERBIRD_CMDLINE=${thunderbird}/bin/thunderbird" ];
|
||||
}))
|
||||
(birdtray.overrideAttrs (_: {
|
||||
cmakeFlags = [ "-DOPT_THUNDERBIRD_CMDLINE=${thunderbird}/bin/thunderbird" ];
|
||||
}))
|
||||
|
||||
jq
|
||||
bluez
|
||||
dconf
|
||||
starship
|
||||
firefox-beta-bin
|
||||
thunderbird-bin
|
||||
youtube-music
|
||||
fluffychat
|
||||
libreoffice-qt6-fresh
|
||||
gimp
|
||||
vscodium git nodejs
|
||||
fprintd
|
||||
cups
|
||||
fish
|
||||
anydesk
|
||||
fastfetch
|
||||
greetd.greetd greetd.tuigreet
|
||||
playerctl
|
||||
adwaita-icon-theme
|
||||
android-tools
|
||||
filezilla
|
||||
bitwarden-desktop
|
||||
davinci-resolve
|
||||
mpv
|
||||
wget
|
||||
sshfs
|
||||
];
|
||||
};
|
||||
jq
|
||||
bluez
|
||||
dconf
|
||||
starship
|
||||
element-desktop
|
||||
firefox-beta-bin
|
||||
thunderbird-bin
|
||||
youtube-music
|
||||
libreoffice-qt6-fresh
|
||||
gimp
|
||||
vscodium git nodejs postgresql
|
||||
fprintd
|
||||
cups
|
||||
fish
|
||||
anydesk
|
||||
fastfetch
|
||||
greetd.greetd greetd.tuigreet
|
||||
playerctl
|
||||
adwaita-icon-theme
|
||||
android-tools
|
||||
filezilla
|
||||
bitwarden-desktop
|
||||
davinci-resolve
|
||||
mpv
|
||||
wget
|
||||
sshfs
|
||||
];
|
||||
}
|
||||
|
||||
|
@ -16,11 +16,12 @@
|
||||
programs.obs-studio = {
|
||||
enable = true;
|
||||
plugins = with pkgs.obs-studio-plugins; [
|
||||
obs-backgroundremoval
|
||||
obs-source-clone
|
||||
obs-pipewire-audio-capture
|
||||
#advanced-scene-switcher
|
||||
obs-tuna
|
||||
obs-move-transition
|
||||
droidcam-obs
|
||||
waveform
|
||||
wlrobs
|
||||
];
|
||||
|
Loading…
x
Reference in New Issue
Block a user