diff --git a/boxes/mlg/default.nix b/boxes/mlg/default.nix index 60f5d9e..ce3801f 100644 --- a/boxes/mlg/default.nix +++ b/boxes/mlg/default.nix @@ -18,15 +18,22 @@ qemu virt-manager - deepin.deepin-album libreoffice nomacs vscodium thunderbird - kitty ]; - services.hardware.bolt.enable = true; + services.hardware.bolt.enable = true; # thunderbolt support + hardware.bluetooth = { + enable = true; + settings = { + General = { + Enable = "Source,Sink,Media,Socket"; + ControllerMode = "bredr"; + }; + }; + }; services.openssh.enable = true; services.ssh-phone-home = { @@ -54,9 +61,13 @@ services.avahi.nssmdns = true; # enables the mDNS NSS plug-in services.avahi.openFirewall = true; # opens the firewall for UDP port 5353 + powerManagement.cpuFreqGovernor = "performance"; + nixpkgs.config.allowUnfree = true; networking = { hostName = "mlg"; firewall.enable = true; }; + + system.stateVersion = "23.11"; # don't change this, lol } diff --git a/boxes/x230t/default.nix b/boxes/x230t/default.nix index f7c1a72..f0e2d44 100644 --- a/boxes/x230t/default.nix +++ b/boxes/x230t/default.nix @@ -17,12 +17,6 @@ xscreensaver thunderbird hue-cli - bluetuith - brave - vdirsyncer - isync - khal - todoman ]; hardware.bluetooth = { diff --git a/builds/utils.nix b/builds/utils.nix index 50ee3ac..cc9c66d 100644 --- a/builds/utils.nix +++ b/builds/utils.nix @@ -6,6 +6,7 @@ # shell scripts stuff , makeWrapper , sshuttle +, scrcpy , sxhkd , bash , feh @@ -25,7 +26,7 @@ stdenv.mkDerivation rec { src = ./utils; nativeBuildInputs = [ makeWrapper pkg-config libxcb ]; - buildInputs = [ libxcb bash feh xrandr jq curl fzy ytfzf ffmpeg sshuttle ]; + buildInputs = [ libxcb bash feh xrandr jq curl fzy ytfzf ffmpeg sshuttle scrcpy ]; buildPhase = '' ls @@ -38,7 +39,7 @@ stdenv.mkDerivation rec { for i in $(ls $src/sh); do cp $src/sh/$i $out/bin ln -sf $out/bin/tmenu_run $out/bin/regenerate - wrapProgram $out/bin/$i --prefix PATH : ${lib.makeBinPath [ sxhkd bash feh xrandr jq figlet curl fzy ytfzf ffmpeg sshuttle ]} + wrapProgram $out/bin/$i --prefix PATH : ${lib.makeBinPath [ sxhkd bash feh xrandr jq figlet curl fzy ytfzf ffmpeg sshuttle scrcpy ]} done cp c/status/main $out/bin/statusbar diff --git a/builds/utils/sh/disp b/builds/utils/sh/disp index 400749d..58a906e 100755 --- a/builds/utils/sh/disp +++ b/builds/utils/sh/disp @@ -9,7 +9,7 @@ set_walls() { screensaver () { pkill xscreensaver - HOME=".config/xscreensaver" xscreensaver --no-splash & + HOME=".config/xscreensaver" xscreensaver --no-splash & 2>&1 > /dev/null } keyboard () { @@ -53,11 +53,31 @@ case "$(hostname)" in bspc monitor HDMI-1 -d 2 4 6 8 0 ;; "mlg") - xrandr --output HDMI-0 --primary --mode 1920x1080 --rate 120 --pos 0x0 --rotate normal \ - --output DP-1-2 --mode 1920x1080 --rate 120 --pos 1920x0 --rotate normal \ - --output DP-0 --off \ - --output DP-1-1 --off - xinput set-prop 'INSTANT USB GAMING MOUSE ' 338 -1 + if exists DP-1-2; then + xrandr --output HDMI-0 --primary --mode 1920x1080 --rate 120 --pos 0x0 --rotate normal \ + --output DP-1-2 --mode 1920x1080 --rate 120 --pos 1920x0 --rotate normal \ + --output DP-0 --off \ + --output DP-1-1 --off + bspc monitor DP-1-2 -d 2 4 6 8 + elif exists DP-1-1; then + xrandr --output HDMI-0 --primary --mode 1920x1080 --rate 120 --pos 0x0 --rotate normal \ + --output DP-1-1 --mode 1920x1080 --rate 120 --pos 1920x0 --rotate normal \ + --output DP-0 --off \ + --output DP-1-2 --off + bspc monitor DP-1-1 -d 2 4 6 8 + fi + + xinput set-prop 'INSTANT USB GAMING MOUSE ' 'libinput Accel Speed' -1 + bspc monitor HDMI-0 -d 1 3 5 7 9 + + # setup synchronization + pkill sshfs + rm $HOME/doc # this is safe, as doc is a dir if it mattered, + # but it's just a link, so it's a regular file. + # in conclusion, good either way + mkdir -p $HOME/.cache/mount_point + sshfs usr@mainsail:./doc $HOME/.cache/mount_point + ln -sf $HOME/.cache/mount_point $HOME/doc ;; "x230t") echo "x230t" diff --git a/home/isync/config b/home/isync/config new file mode 100644 index 0000000..341644f --- /dev/null +++ b/home/isync/config @@ -0,0 +1,19 @@ +IMAPStore main-remote +Host mail.beepboop.systems +Port 993 +User ryan@beepboop.systems +SSLType IMAPS +CertificateFile /etc/ssl/certs/ca-certificates.crt + +MaildirStore main-local +Path ~/Mail/main/ +Inbox ~/Mail/main/INBOX +Subfolders Verbatim + +Channel main +Far :main-remote: +Near :main-local: +Create Both +Expunge Both +Patterns * +SyncState * diff --git a/home/isync/default.nix b/home/isync/default.nix new file mode 100644 index 0000000..c6ad1cf --- /dev/null +++ b/home/isync/default.nix @@ -0,0 +1,9 @@ +{ lib, config, pkgs, home, ... }: + +{ + home.file = { + ".config/isync/config" = { + source = ./config; + }; + }; +} diff --git a/home/khal/config b/home/khal/config new file mode 100644 index 0000000..c8de783 --- /dev/null +++ b/home/khal/config @@ -0,0 +1,7 @@ +[calendars] +[[home]] +path = "~/vdir/calendar/personal/edfbeaf1-e9f3-4d94-a512-40cdafdbc7a0" +color = dark green +[[band]] +path = "~/vdir/calendar/band" +color = dark green diff --git a/home/khal/default.nix b/home/khal/default.nix new file mode 100644 index 0000000..7694a5a --- /dev/null +++ b/home/khal/default.nix @@ -0,0 +1,9 @@ +{ lib, config, pkgs, home, ... }: + +{ + home.file = { + ".config/khal/config" = { + source = ./config; + }; + }; +} diff --git a/home/neomutt/default.nix b/home/neomutt/default.nix new file mode 100644 index 0000000..07e36f9 --- /dev/null +++ b/home/neomutt/default.nix @@ -0,0 +1,9 @@ +{ lib, config, pkgs, home, ... }: + +{ + home.file = { + ".config/neomutt/neomuttrc" = { + source = ./neomuttrc; + }; + }; +} diff --git a/home/neomutt/neomuttrc b/home/neomutt/neomuttrc new file mode 100644 index 0000000..47e6287 --- /dev/null +++ b/home/neomutt/neomuttrc @@ -0,0 +1,26 @@ +set editor = "nvim" + +set my_name = "Ryan Marina" +set fast_reply + +set mbox_type = Maildir +set folder = "~/Mail/main" + +set sidebar_visible +set sidebar_format = "%B%%* %%S" +set mail_check_stats + +set from = "ryan@beepboop.systems" +set spoolfile = +INBOX +set record = "+Sent" +set trash = "+Trash" +set postponed = "+Drafts" +mailboxes +SMS +INBOX "+College Messages" + +unset wait_key +macro index S "mbsync --config=/home/usr/.config/isync/config main; vdirsyncer sync" + +set use_threads = yes +set sort_aux = reverse-last-date-received + +set imap_keepalive = 300 diff --git a/home/todoman/config.py b/home/todoman/config.py new file mode 100644 index 0000000..7532247 --- /dev/null +++ b/home/todoman/config.py @@ -0,0 +1,4 @@ +path = "~/vdir/calendar/personal/*" +date_format = "%m-%d-%Y" +time_format = "%H:%M" +default_list = "edfbeaf1-e9f3-4d94-a512-40cdafdbc7a0" diff --git a/home/todoman/default.nix b/home/todoman/default.nix new file mode 100644 index 0000000..141adc3 --- /dev/null +++ b/home/todoman/default.nix @@ -0,0 +1,9 @@ +{ lib, config, pkgs, home, ... }: + +{ + home.file = { + ".config/todoman/config.py" = { + source = ./config.py; + }; + }; +} diff --git a/home/vdirsyncer/config b/home/vdirsyncer/config new file mode 100644 index 0000000..32d2053 --- /dev/null +++ b/home/vdirsyncer/config @@ -0,0 +1,51 @@ +[general] +status_path = "~/vdir/status" + +[pair contacts] +a = "contacts_local" +b = "contacts_remote" +collections = ["from a", "from b"] + +[pair calendar] +a = "calendar_local" +b = "calendar_remote" +collections = ["from a", "from b"] + +[pair band_calendar] +a = "band_calendar_local" +b = "band_calendar_remote" +collections = null + +[storage contacts_local] +type = "filesystem" +path = "~/vdir/people/main" +fileext = ".vcf" + +[storage calendar_local] +type = "filesystem" +path = "~/vdir/calendar/personal" +fileext = ".ics" + +[storage band_calendar_local] +type = "filesystem" +path = "~/vdir/calendar/band" +fileext = ".ics" + +[storage contacts_remote] +type = "carddav" + +url = "https://radicale.beepboop.systems/ryan/20cda0dd-5922-4905-8956-859c989a6519/" +username = "ryan" +password.fetch = ["prompt", "password for radicale"] + +[storage band_calendar_remote] +type = "http" + +url = "https://calendar.google.com/calendar/ical/i6bong6iferbcuf1u25jg47t7k%40group.calendar.google.com/public/basic.ics" + +[storage calendar_remote] +type = "caldav" + +url = "https://radicale.beepboop.systems/ryan/edfbeaf1-e9f3-4d94-a512-40cdafdbc7a0/" +username = "ryan" +password.fetch = ["prompt", "password for radicale"] diff --git a/home/vdirsyncer/default.nix b/home/vdirsyncer/default.nix new file mode 100644 index 0000000..e7fb08b --- /dev/null +++ b/home/vdirsyncer/default.nix @@ -0,0 +1,9 @@ +{ lib, config, pkgs, home, ... }: + +{ + home.file = { + ".config/vdirsyncer/config" = { + source = ./config; + }; + }; +} diff --git a/home/x11.nix b/home/x11.nix index 299f1e3..3e2e6c2 100644 --- a/home/x11.nix +++ b/home/x11.nix @@ -11,6 +11,11 @@ ./wallpapers ./firefox ./emacs + ./vdirsyncer + ./khal + ./isync + ./todoman + ./neomutt ./x11-progs.nix ./tty.nix diff --git a/modules/gaming.nix b/modules/gaming.nix index 9c5dd7c..dd3afd7 100644 --- a/modules/gaming.nix +++ b/modules/gaming.nix @@ -7,7 +7,7 @@ }; environment.systemPackages = with pkgs; [ - prismlauncher + (prismlauncher.override { jdks = [ zulu8 zulu17 ]; }) xonotic minetest ]; diff --git a/modules/x11.nix b/modules/x11.nix index fc4b9cf..c341db3 100644 --- a/modules/x11.nix +++ b/modules/x11.nix @@ -12,6 +12,16 @@ bspwm sxhkd xscreensaver + + # non-x11 things, but common to the desktops + bluetuith + brave + vdirsyncer + isync + khal + todoman + sshfs + rsync ]; services.xserver = {