Compare commits

...

2 Commits

Author SHA1 Message Date
Jacob Hinkle
ee4ff53921 Old setup for pentablet 2023-09-13 07:30:18 -04:00
Jacob Hinkle
956165c4e3 More updates for no-external monitor 2023-09-13 07:18:29 -04:00
5 changed files with 66 additions and 22 deletions

1
.gitattributes vendored Normal file
View File

@ -0,0 +1 @@
*.deb filter=lfs diff=lfs merge=lfs -text

View File

@ -40,6 +40,7 @@
inconsolata inconsolata
jq jq
keyutils # for keyctl, used by some bitwarden scripts like qute-bitwarden keyutils # for keyctl, used by some bitwarden scripts like qute-bitwarden
krita
libreoffice libreoffice
logseq logseq
mupdf mupdf
@ -61,6 +62,7 @@
tree tree
unzip unzip
xclip xclip
xournal
xpra xpra
zathura zathura
zoom-us zoom-us
@ -357,5 +359,9 @@
config = ./xmonad.hs; config = ./xmonad.hs;
}; };
}; };
initExtra = ''
xinput --map-to-output 'HANVON UGEE Artist 16(2nd Gen) Mouse' DP-1
xinput --map-to-output 'HANVON UGEE Artist 16(2nd Gen)' DP-1
'';
}; };
} }

View File

@ -8,7 +8,11 @@
inputs, inputs,
sops, sops,
... ...
}: { }:
let
xp_pen_pentablet = pkgs.callPackage ./xp_pen_pentablet.nix {};
in
{
imports = [ imports = [
# Include the results of the hardware scan. # Include the results of the hardware scan.
./hardware-configuration.nix ./hardware-configuration.nix
@ -53,15 +57,17 @@
}; };
}; };
networking.hostName = "buck"; # Define your hostname. networking = {
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. hostName = "buck"; # Define your hostname.
networking.wireless = { enableIPv6 = true;
enable = true; wireless = {
userControlled.enable = true; enable = true;
environmentFile = "/run/secrets/wifi/env"; userControlled.enable = true;
networks = { environmentFile = "/run/secrets/wifi/env";
"@SSID_HOME@" = { networks = {
pskRaw = "@PSKRAW_HOME@"; "@SSID_HOME@" = {
pskRaw = "@PSKRAW_HOME@";
};
}; };
}; };
}; };
@ -85,8 +91,11 @@
# List packages installed in system profile. To search, run: # List packages installed in system profile. To search, run:
# $ nix search wget # $ nix search wget
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
networkmanager
networkmanagerapplet
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default. vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
wget wget
xp_pen_pentablet
]; ];
# Some programs need SUID wrappers, can be configured further or are # Some programs need SUID wrappers, can be configured further or are
@ -97,6 +106,8 @@
enable = true; enable = true;
enableSSHSupport = true; enableSSHSupport = true;
}; };
# This is needed in case users set zsh as their default shell
zsh.enable = true;
}; };
# List services that you want to enable: # List services that you want to enable:
@ -108,16 +119,26 @@
# Enable touchpad support (enabled default in most desktopManager). services.xserver.libinput.enable = true; # Enable touchpad support (enabled default in most desktopManager). services.xserver.libinput.enable = true;
# Define a user account. Don't forget to set a password with passwd. # Define a user account. Don't forget to set a password with passwd.
users.users.jacob = { users = {
isNormalUser = true; groups.plugdev = {};
extraGroups = [ "video" "wheel" ]; # Enable sudo for the user. users.jacob = {
shell = pkgs.zsh; isNormalUser = true;
extraGroups = [ "audio" "jackaudio" "plugdev" "video" "wheel" ]; # Enable sudo for the user.
shell = pkgs.zsh;
};
}; };
security.rtkit.enable = true; # recommended for pipewire security.rtkit.enable = true; # recommended for pipewire
# List services that you want to enable: # List services that you want to enable:
services = { services = {
# If you want to use JACK applications, uncomment this
jack = {
alsa.enable = false;
jackd.enable = true;
loopback.enable = true;
};
logind = { logind = {
extraConfig = '' extraConfig = ''
[Login] [Login]
@ -134,12 +155,10 @@
openssh.enable = true; openssh.enable = true;
pipewire = { pipewire = {
enable = true; enable = false;
alsa.enable = true; alsa.enable = false;
alsa.support32Bit = true; alsa.support32Bit = true;
pulse.enable = true; pulse.enable = true;
# If you want to use JACK applications, uncomment this
#jack.enable = true;
# use the example session manager (no others are packaged yet so this is enabled by default, # use the example session manager (no others are packaged yet so this is enabled by default,
# no need to redefine it in your config for now) # no need to redefine it in your config for now)
@ -154,12 +173,22 @@
udev.extraRules = '' udev.extraRules = ''
ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="intel_backlight", MODE="0666", RUN+="${pkgs.coreutils}/bin/chmod a+w /sys/class/backlight/%k/brightness" ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="intel_backlight", MODE="0666", RUN+="${pkgs.coreutils}/bin/chmod a+w /sys/class/backlight/%k/brightness"
KERNEL=="hidraw", SUBSYSTEM=="hidraw", MODE="0664", GROUP="plugdev"
# For XP-PEN tablet
# From the official driver
KERNEL=="uinput",MODE:="0666",OPTIONS+="static_node=uinput"
SUBSYSTEMS=="usb",ATTRS{idVendor}=="28bd",MODE:="0666"
j
#KERNEL=="event[0-9]*", SUBSYSTEM=="input", SUBSYSTEMS=="usb", ATTRS{idVendor}=="28bd", ATTRS{idProduct}=="094c", MODE="0664", GROUP="plugdev"
#KERNEL=="mouse[0-9]*", SUBSYSTEM=="input", SUBSYSTEMS=="usb", ATTRS{idVendor}=="28bd", ATTRS{idProduct}=="094c", MODE="0664", GROUP="plugdev"
''; '';
# Enable the X11 windowing system. services.xserver.enable = true; # Enable the X11 windowing system. services.xserver.enable = true;
xserver = { xserver = {
enable = true; enable = true;
dpi = 112; # t470 has a 14" 16:9 monitor at native res 1366x768 dpi = 112; # t470 has a 14" 16:9 monitor at native res 1366x768
digimend.enable = true;
displayManager = { displayManager = {
defaultSession = "none+i3"; defaultSession = "none+i3";
autoLogin = { autoLogin = {
@ -178,6 +207,7 @@
disableWhileTyping = true; disableWhileTyping = true;
}; };
}; };
#wacom.enable = true;
windowManager.i3 = { windowManager.i3 = {
enable = true; enable = true;
extraPackages = with pkgs; [ extraPackages = with pkgs; [

View File

@ -42,8 +42,14 @@
# networking.interfaces.enp0s31f6.useDHCP = lib.mkDefault true; # networking.interfaces.enp0s31f6.useDHCP = lib.mkDefault true;
# networking.interfaces.wlp4s0.useDHCP = lib.mkDefault true; # networking.interfaces.wlp4s0.useDHCP = lib.mkDefault true;
hardware.video.hidpi.enable = true; #hardware.video.hidpi.enable = true;
powerManagement.cpuFreqGovernor = "powersave"; powerManagement.cpuFreqGovernor = "powersave";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
# for XP-Pen tablet
#hardware.opentabletdriver = {
#enable = true;
#package = patchedOTD;
#};
} }

View File

@ -25,7 +25,7 @@
, lib , lib
, fetchurl , fetchurl
, glib , glib
, dbus_libs , dbus
, dpkg , dpkg
, autoPatchelfHook , autoPatchelfHook
, writeShellScript , writeShellScript
@ -44,7 +44,7 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "xp_pen_driver"; pname = "xp_pen_driver";
version = "3.2.0.210804-1"; version = "3.3.9.230222-1";
src = fetchurl { src = fetchurl {
#url = "https://github.com/peterwilli/XP-Pen-Pentablet-Driver-for-Nixos/releases/download/3.2.0.210804-1/XP-PEN-pentablet-3.2.0.210804-1.x86_64.deb"; #url = "https://github.com/peterwilli/XP-Pen-Pentablet-Driver-for-Nixos/releases/download/3.2.0.210804-1/XP-PEN-pentablet-3.2.0.210804-1.x86_64.deb";
@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
zlib zlib
libGL libGL
libusb libusb
dbus_libs dbus
fontconfig fontconfig
glib glib
freetype freetype
@ -81,6 +81,7 @@ stdenv.mkDerivation rec {
chmod 755 "$out" chmod 755 "$out"
chmod a+x $out/usr/lib/pentablet/pentablet.sh chmod a+x $out/usr/lib/pentablet/pentablet.sh
chmod a+x $out/usr/lib/pentablet/pentablet
runHook postInstall runHook postInstall
mkdir -p $out/bin mkdir -p $out/bin
makeWrapper $out/usr/lib/pentablet/pentablet.sh $out/bin/pentablet makeWrapper $out/usr/lib/pentablet/pentablet.sh $out/bin/pentablet