mirror of
https://github.com/Theaninova/TheaninovOS.git
synced 2025-12-11 02:56:27 +00:00
feat: add printer stuff
This commit is contained in:
18
flake.lock
generated
18
flake.lock
generated
@@ -340,6 +340,21 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nur": {
|
||||
"locked": {
|
||||
"lastModified": 1706686049,
|
||||
"narHash": "sha256-TCuYU/F5uuMDIBcFSm1xi2fYHt1Bit8fYPzIzB7T6HY=",
|
||||
"owner": "nix-community",
|
||||
"repo": "NUR",
|
||||
"rev": "fab803d7fa7e066ff6193fe40ba29d2e322835e1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "NUR",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pre-commit-hooks": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat",
|
||||
@@ -375,7 +390,8 @@
|
||||
"home-manager": "home-manager",
|
||||
"hyprland": "hyprland",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nixvim": "nixvim"
|
||||
"nixvim": "nixvim",
|
||||
"nur": "nur"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
nur.url = "github:nix-community/NUR";
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
@@ -19,6 +20,7 @@
|
||||
|
||||
outputs = {
|
||||
nixpkgs,
|
||||
nur,
|
||||
home-manager,
|
||||
ags,
|
||||
nixvim,
|
||||
@@ -39,12 +41,14 @@
|
||||
trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="];
|
||||
};
|
||||
overlays = [
|
||||
nur.overlay
|
||||
(final: prev: {
|
||||
anyrunPlugins = anyrun.packages.${prev.system};
|
||||
hyprland = hyprland.packages.${prev.system}.hyprland;
|
||||
xdg-desktop-portal-hyprland = hyprland.packages.${prev.system}.xdg-desktop-portal-hyprland;
|
||||
ags = ags.packages.${prev.system}.default;
|
||||
gbmonctl = prev.callPackage ./overlays/gbmonctl {};
|
||||
lpc21isp = prev.callPackage ./overlays/lpc21isp {};
|
||||
})
|
||||
];
|
||||
});
|
||||
|
||||
26
home/clean-home-dir.nix
Normal file
26
home/clean-home-dir.nix
Normal file
@@ -0,0 +1,26 @@
|
||||
{config, ...}: {
|
||||
xdg.enable = true;
|
||||
xdg.userDirs.enable = true;
|
||||
home.sessionVariables = {
|
||||
HISTFILE = "${config.xdg.stateHome}/bash/history";
|
||||
NPM_CONFIG_USERCONFIG = "${config.xdg.configHome}/npm/config";
|
||||
NPM_CONFIG_CACHE = "${config.xdg.cacheHome}/npm";
|
||||
NPM_CONFIG_TMP = "${config.xdg.stateHome}/npm";
|
||||
WINEPREFIX = "${config.xdg.configHome}/wineprefixes/default";
|
||||
_JAVA_OPTGRADLE_USER_HOMEIONS = ''-Djava.util.prefs.userRoot="${config.xdg.configHome}"/java'';
|
||||
GRADLE_USER_HOME = "${config.xdg.configHome}/gradle";
|
||||
DVDCSS_CACHE = "${config.xdg.cacheHome}/dvdcss";
|
||||
DOCKER_CONFIG = "${config.xdg.configHome}/docker";
|
||||
PYTHON_HISTORY = "${config.xdg.stateHome}/python/history";
|
||||
PYTHONCACHEPREFIX = "${config.xdg.cacheHome}/python";
|
||||
PYTHONUSERBASE = "${config.xdg.dataHome}/python";
|
||||
WGETRC = "${config.xdg.configHome}/wgetrc";
|
||||
XCOMPOSEFILE = "${config.xdg.configHome}/X11/xcompose";
|
||||
XCOMPOSECACHE = "${config.xdg.cacheHome}/X11/xcompose";
|
||||
};
|
||||
gtk.gtk2.configLocation = "${config.xdg.configHome}/gtk-2.0/gtkrc";
|
||||
programs.gpg.homedir = "${config.xdg.configHome}/gnupg";
|
||||
xdg.configFile.wgetrc.text = ''
|
||||
hsts-file="${config.xdg.cacheHome}/wget-hsts"
|
||||
'';
|
||||
}
|
||||
@@ -10,16 +10,11 @@
|
||||
inherit username stateVersion;
|
||||
homeDirectory = "/home/${username}";
|
||||
};
|
||||
xdg.userDirs = {
|
||||
enable = true;
|
||||
extraConfig = {
|
||||
XDG_PROJECTS_DIR = "${home.homeDirectory}/Projects";
|
||||
};
|
||||
};
|
||||
imports = [
|
||||
inputs.ags.homeManagerModules.default
|
||||
inputs.nixvim.homeManagerModules.nixvim
|
||||
inputs.anyrun.homeManagerModules.default
|
||||
./clean-home-dir.nix
|
||||
./programs/neovide.nix
|
||||
./packages
|
||||
./programs
|
||||
|
||||
@@ -17,6 +17,8 @@
|
||||
"GBM_BACKEND,nvidia-drm"
|
||||
"__GLX_VENDOR_LIBRARY_NAME,nvidia"
|
||||
"WLR_NO_HARDWARE_CURSORS,1"
|
||||
"__GL_GSYNC_ALLOWED,0"
|
||||
"__GL_VRR_ALLOWED,0"
|
||||
"NIXOS_OZONE_WL,1"
|
||||
# Fixes black screen on Jellyfin
|
||||
# https://github.com/jellyfin/jellyfin-media-player/issues/165#issuecomment-1569842393
|
||||
|
||||
@@ -9,7 +9,6 @@
|
||||
libxcrypt
|
||||
|
||||
# browsers
|
||||
firefox-wayland
|
||||
chromium
|
||||
brave
|
||||
|
||||
@@ -60,6 +59,11 @@
|
||||
avalonia-ilspy
|
||||
ghidra
|
||||
|
||||
# 3d printing
|
||||
lpc21isp
|
||||
dfu-util
|
||||
cura
|
||||
|
||||
# gaming
|
||||
steam
|
||||
oversteer
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
pkgs,
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
name = "firefox-gnome-theme";
|
||||
version = "116.0.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "rafaelmardojai";
|
||||
repo = "firefox-gnome-theme";
|
||||
sparseCheckout = ["scripts"];
|
||||
rev = "v116";
|
||||
sha256 = "0IS5na2WRSNWNygHhmZOcXhdrx2aFhCDQY8XVVeHf8Q=";
|
||||
};
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp scripts/install-by-curl.sh $out/bin/install-firefox-gnome-theme
|
||||
'';
|
||||
}
|
||||
@@ -5,6 +5,8 @@
|
||||
git = import ./git.nix;
|
||||
lazygit.enable = true;
|
||||
nixvim = import ./nixvim.nix {inherit pkgs;};
|
||||
firefox = import ./firefox.nix {inherit pkgs;};
|
||||
gpg.enable = true;
|
||||
btop = {
|
||||
enable = true;
|
||||
settings = {
|
||||
|
||||
80
home/programs/firefox.nix
Normal file
80
home/programs/firefox.nix
Normal file
@@ -0,0 +1,80 @@
|
||||
{pkgs}: {
|
||||
enable = true;
|
||||
package = pkgs.wrapFirefox pkgs.firefox-unwrapped {
|
||||
extraPolicies = {
|
||||
CaptivePortal = false;
|
||||
DisableFirefoxStudies = true;
|
||||
DisablePocket = true;
|
||||
DisableTelemetry = true;
|
||||
DisableFirefoxAccounts = true;
|
||||
NoDefaultBookmarks = true;
|
||||
OfferToSaveLogins = false;
|
||||
OfferToSaveLoginsDefault = false;
|
||||
PasswordManagerEnabled = false;
|
||||
FirefoxHome = {
|
||||
Search = true;
|
||||
Pocket = false;
|
||||
Snippets = false;
|
||||
TopSites = true;
|
||||
Highlights = false;
|
||||
};
|
||||
UserMessaging = {
|
||||
ExtensionRecommendations = false;
|
||||
SkipOnboarding = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
profiles.default = {
|
||||
id = 0;
|
||||
name = "default";
|
||||
isDefault = true;
|
||||
bookmarks = [
|
||||
{
|
||||
name = "Monkeytype";
|
||||
url = "https://monkeytype.com/";
|
||||
}
|
||||
{
|
||||
name = "YouTube";
|
||||
url = "https://youtube.com/";
|
||||
}
|
||||
];
|
||||
search = {
|
||||
force = true;
|
||||
default = "Google";
|
||||
engines = {
|
||||
"Nix Packages" = {
|
||||
urls = [
|
||||
{
|
||||
template = "https://search.nixos.org/packages";
|
||||
params = [
|
||||
{
|
||||
name = "type";
|
||||
value = "packages";
|
||||
}
|
||||
{
|
||||
name = "query";
|
||||
value = "{searchTerms}";
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||
definedAliases = ["@np"];
|
||||
};
|
||||
"NixOS Wiki" = {
|
||||
urls = [{template = "https://nixos.wiki/index.php?search={searchTerms}";}];
|
||||
iconUpdateURL = "https://nixos.wiki/favicon.png";
|
||||
updateInterval = 24 * 60 * 60 * 1000;
|
||||
definedAliases = ["@nw"];
|
||||
};
|
||||
"Wikipedia (en)".metaData.alias = "@wiki";
|
||||
};
|
||||
};
|
||||
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
||||
ublock-origin
|
||||
ublacklist
|
||||
sponsorblock
|
||||
bitwarden
|
||||
];
|
||||
};
|
||||
}
|
||||
27
overlays/lpc21isp/default.nix
Normal file
27
overlays/lpc21isp/default.nix
Normal file
@@ -0,0 +1,27 @@
|
||||
{
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
glibc,
|
||||
lib,
|
||||
}:
|
||||
stdenv.mkDerivation {
|
||||
name = "lpc21isp";
|
||||
src = fetchFromGitHub {
|
||||
owner = "capiman";
|
||||
repo = "lpc21isp";
|
||||
rev = "cf89d0b122ef02358e0f130b8f32cb804c11a54e";
|
||||
hash = "sha256-BZvtJMtVyqsCPVhp/QL5cXJY8Q25T/RzYzHMutE24hk=";
|
||||
};
|
||||
nativeBuildInputs = [glibc.static];
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp lpc21isp $out/bin
|
||||
'';
|
||||
meta = with lib; {
|
||||
description = "Portable command line ISP for NXP LPC family and Analog Devices ADUC70xx";
|
||||
homepage = "https://github.com/capiman/lpc21isp";
|
||||
license = licenses.lgpl3Plus;
|
||||
maintainers = [maintainers.theaninova];
|
||||
mainProgram = "lpc21isp";
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user