feat: add printer stuff

This commit is contained in:
2024-02-03 18:03:54 +01:00
parent da3501c0ee
commit e671e2e081
10 changed files with 164 additions and 29 deletions

18
flake.lock generated
View File

@@ -340,6 +340,21 @@
"type": "github" "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": { "pre-commit-hooks": {
"inputs": { "inputs": {
"flake-compat": "flake-compat", "flake-compat": "flake-compat",
@@ -375,7 +390,8 @@
"home-manager": "home-manager", "home-manager": "home-manager",
"hyprland": "hyprland", "hyprland": "hyprland",
"nixpkgs": "nixpkgs_3", "nixpkgs": "nixpkgs_3",
"nixvim": "nixvim" "nixvim": "nixvim",
"nur": "nur"
} }
}, },
"systems": { "systems": {

View File

@@ -1,6 +1,7 @@
{ {
inputs = { inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nur.url = "github:nix-community/NUR";
home-manager = { home-manager = {
url = "github:nix-community/home-manager"; url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
@@ -19,6 +20,7 @@
outputs = { outputs = {
nixpkgs, nixpkgs,
nur,
home-manager, home-manager,
ags, ags,
nixvim, nixvim,
@@ -39,12 +41,14 @@
trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="]; trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="];
}; };
overlays = [ overlays = [
nur.overlay
(final: prev: { (final: prev: {
anyrunPlugins = anyrun.packages.${prev.system}; anyrunPlugins = anyrun.packages.${prev.system};
hyprland = hyprland.packages.${prev.system}.hyprland; hyprland = hyprland.packages.${prev.system}.hyprland;
xdg-desktop-portal-hyprland = hyprland.packages.${prev.system}.xdg-desktop-portal-hyprland; xdg-desktop-portal-hyprland = hyprland.packages.${prev.system}.xdg-desktop-portal-hyprland;
ags = ags.packages.${prev.system}.default; ags = ags.packages.${prev.system}.default;
gbmonctl = prev.callPackage ./overlays/gbmonctl {}; gbmonctl = prev.callPackage ./overlays/gbmonctl {};
lpc21isp = prev.callPackage ./overlays/lpc21isp {};
}) })
]; ];
}); });

26
home/clean-home-dir.nix Normal file
View 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"
'';
}

View File

@@ -10,16 +10,11 @@
inherit username stateVersion; inherit username stateVersion;
homeDirectory = "/home/${username}"; homeDirectory = "/home/${username}";
}; };
xdg.userDirs = {
enable = true;
extraConfig = {
XDG_PROJECTS_DIR = "${home.homeDirectory}/Projects";
};
};
imports = [ imports = [
inputs.ags.homeManagerModules.default inputs.ags.homeManagerModules.default
inputs.nixvim.homeManagerModules.nixvim inputs.nixvim.homeManagerModules.nixvim
inputs.anyrun.homeManagerModules.default inputs.anyrun.homeManagerModules.default
./clean-home-dir.nix
./programs/neovide.nix ./programs/neovide.nix
./packages ./packages
./programs ./programs

View File

@@ -17,6 +17,8 @@
"GBM_BACKEND,nvidia-drm" "GBM_BACKEND,nvidia-drm"
"__GLX_VENDOR_LIBRARY_NAME,nvidia" "__GLX_VENDOR_LIBRARY_NAME,nvidia"
"WLR_NO_HARDWARE_CURSORS,1" "WLR_NO_HARDWARE_CURSORS,1"
"__GL_GSYNC_ALLOWED,0"
"__GL_VRR_ALLOWED,0"
"NIXOS_OZONE_WL,1" "NIXOS_OZONE_WL,1"
# Fixes black screen on Jellyfin # Fixes black screen on Jellyfin
# https://github.com/jellyfin/jellyfin-media-player/issues/165#issuecomment-1569842393 # https://github.com/jellyfin/jellyfin-media-player/issues/165#issuecomment-1569842393

View File

@@ -9,7 +9,6 @@
libxcrypt libxcrypt
# browsers # browsers
firefox-wayland
chromium chromium
brave brave
@@ -60,6 +59,11 @@
avalonia-ilspy avalonia-ilspy
ghidra ghidra
# 3d printing
lpc21isp
dfu-util
cura
# gaming # gaming
steam steam
oversteer oversteer

View File

@@ -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
'';
}

View File

@@ -5,6 +5,8 @@
git = import ./git.nix; git = import ./git.nix;
lazygit.enable = true; lazygit.enable = true;
nixvim = import ./nixvim.nix {inherit pkgs;}; nixvim = import ./nixvim.nix {inherit pkgs;};
firefox = import ./firefox.nix {inherit pkgs;};
gpg.enable = true;
btop = { btop = {
enable = true; enable = true;
settings = { settings = {

80
home/programs/firefox.nix Normal file
View 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
];
};
}

View 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";
};
}