summaryrefslogtreecommitdiffstats
path: root/tv
diff options
context:
space:
mode:
Diffstat (limited to 'tv')
-rw-r--r--tv/1systems/alnus/config.nix6
-rw-r--r--tv/1systems/nomic/config.nix6
-rw-r--r--tv/1systems/querel/config.nix8
-rw-r--r--tv/1systems/wu/config.nix4
-rw-r--r--tv/1systems/xu/config.nix4
-rw-r--r--tv/1systems/zu/config.nix4
-rw-r--r--tv/2configs/imgur.nix25
-rw-r--r--tv/2configs/urlwatch.nix8
-rw-r--r--tv/2configs/xserver/default.nix7
-rw-r--r--tv/3modules/Xresources.nix2
-rw-r--r--tv/3modules/dnsmasq.nix3
-rw-r--r--tv/5pkgs/haskell/xmonad-tv/src/Paths.hs3
-rw-r--r--tv/5pkgs/haskell/xmonad-tv/src/main.hs15
13 files changed, 69 insertions, 26 deletions
diff --git a/tv/1systems/alnus/config.nix b/tv/1systems/alnus/config.nix
index d54d5fc2f..21583f741 100644
--- a/tv/1systems/alnus/config.nix
+++ b/tv/1systems/alnus/config.nix
@@ -11,10 +11,8 @@ with import <stockholm/lib>;
boot = {
initrd = {
availableKernelModules = [ "ahci" ];
- luks = {
- cryptoModules = [ "aes" "sha512" "xts" ];
- devices = [ { name = "luksroot"; device = "/dev/sda2"; } ];
- };
+ luks.cryptoModules = [ "aes" "sha512" "xts" ];
+ luks.devices.luksroot.devices = "/dev/sda2";
};
};
diff --git a/tv/1systems/nomic/config.nix b/tv/1systems/nomic/config.nix
index 86f9b7ec2..38cc62369 100644
--- a/tv/1systems/nomic/config.nix
+++ b/tv/1systems/nomic/config.nix
@@ -17,9 +17,7 @@ with import <stockholm/lib>;
boot.initrd.luks = {
cryptoModules = [ "aes" "sha512" "xts" ];
- devices = [
- { name = "luks1"; device = "/dev/sda2"; }
- ];
+ devices.luks1.device = "/dev/sda2";
};
# Don't use UEFI because current disk was partitioned/formatted for AO753.
@@ -47,6 +45,8 @@ with import <stockholm/lib>;
fsType = "btrfs";
};
+ environment.homeBinInPath = true;
+
environment.systemPackages = with pkgs; [
(writeDashBin "play" ''
set -euf
diff --git a/tv/1systems/querel/config.nix b/tv/1systems/querel/config.nix
index ac51f54e6..e58a9b216 100644
--- a/tv/1systems/querel/config.nix
+++ b/tv/1systems/querel/config.nix
@@ -75,10 +75,10 @@ with import <stockholm/lib>;
};
services.xserver.desktopManager.plasma5.enable = true;
- services.xserver.displayManager.auto = {
- enable = true;
- user = "itak";
- };
+
+ services.xserver.displayManager.lightdm.autoLogin.enable = true;
+ services.xserver.displayManager.lightdm.autoLogin.user = "itak";
+ services.xserver.displayManager.lightdm.enable = true;
users.users.itak = {
inherit (config.krebs.users.itak) home uid;
diff --git a/tv/1systems/wu/config.nix b/tv/1systems/wu/config.nix
index 4c491d65b..d4114f00a 100644
--- a/tv/1systems/wu/config.nix
+++ b/tv/1systems/wu/config.nix
@@ -18,9 +18,7 @@ with import <stockholm/lib>;
boot.initrd.luks = {
cryptoModules = [ "aes" "sha512" "xts" ];
- devices = [
- { name = "wuca"; device = "/dev/sda2"; }
- ];
+ devices.wuca.device = "/dev/sda2";
};
fileSystems = {
diff --git a/tv/1systems/xu/config.nix b/tv/1systems/xu/config.nix
index 33f9539c9..503142b96 100644
--- a/tv/1systems/xu/config.nix
+++ b/tv/1systems/xu/config.nix
@@ -113,9 +113,7 @@ with import <stockholm/lib>;
boot.initrd.luks = {
cryptoModules = [ "aes" "sha512" "xts" ];
- devices = [
- { name = "xuca"; device = "/dev/sda2"; }
- ];
+ devices.xuca.device = "/dev/sda2";
};
fileSystems = {
diff --git a/tv/1systems/zu/config.nix b/tv/1systems/zu/config.nix
index bbfcfafc1..5a69601e9 100644
--- a/tv/1systems/zu/config.nix
+++ b/tv/1systems/zu/config.nix
@@ -18,9 +18,7 @@ with import <stockholm/lib>;
boot.initrd.luks = {
cryptoModules = [ "aes" "sha512" "xts" ];
- devices = [
- { name = "zuca"; device = "/dev/sda2"; }
- ];
+ devices.zuca.device = "/dev/sda2";
};
fileSystems = {
diff --git a/tv/2configs/imgur.nix b/tv/2configs/imgur.nix
new file mode 100644
index 000000000..ba84fd2df
--- /dev/null
+++ b/tv/2configs/imgur.nix
@@ -0,0 +1,25 @@
+with import <stockholm/lib>;
+{ config, pkgs, ... }: {
+
+ services.nginx.virtualHosts."ni.r" = {
+ locations."/image" = {
+ extraConfig = /* nginx */ ''
+ client_max_body_size 20M;
+
+ proxy_set_header Host $host;
+ proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+ proxy_set_header X-Forwarded-Proto $scheme;
+
+ proxy_pass http://127.0.0.1:${toString config.krebs.htgen.imgur.port};
+ proxy_pass_header Server;
+ '';
+ };
+ };
+
+ krebs.htgen.imgur = {
+ port = 7771;
+ script = /* sh */ ''
+ (. ${pkgs.htgen-imgur}/bin/htgen-imgur)
+ '';
+ };
+}
diff --git a/tv/2configs/urlwatch.nix b/tv/2configs/urlwatch.nix
index 378b5d167..619b04459 100644
--- a/tv/2configs/urlwatch.nix
+++ b/tv/2configs/urlwatch.nix
@@ -24,7 +24,13 @@ in {
http://www.exim.org/
# ref src/nixpkgs/pkgs/tools/networking/urlwatch/default.nix
- https://thp.io/2008/urlwatch/
+ {
+ url = https://thp.io/2008/urlwatch/;
+ # workaround: ('Received response with content-encoding: gzip, but
+ # failed to decode it.', error('Error -3 while decompressing data:
+ # incorrect header check',))
+ ignore_cached = true;
+ }
# 2015-02-18
# ref ~/src/nixpkgs/pkgs/tools/text/qprint/default.nix
diff --git a/tv/2configs/xserver/default.nix b/tv/2configs/xserver/default.nix
index 357744533..4e9e30741 100644
--- a/tv/2configs/xserver/default.nix
+++ b/tv/2configs/xserver/default.nix
@@ -108,6 +108,13 @@ in {
};
path = [
config.tv.slock.package
+ (pkgs.flameshot-once.override {
+ config.imgur.enable = true;
+ config.imgur.createUrl = "http://ni.r/image";
+ config.imgur.deleteUrl = "http://ni.r/image/delete/%1";
+ config.imgur.xdg-open.browser = "/etc/profiles/per-user/tv/bin/cr";
+ config.timeout = 200;
+ })
pkgs.fzmenu
pkgs.pulseaudioLight.out
pkgs.rxvt_unicode
diff --git a/tv/3modules/Xresources.nix b/tv/3modules/Xresources.nix
index ce7ac9ac2..ab233dd65 100644
--- a/tv/3modules/Xresources.nix
+++ b/tv/3modules/Xresources.nix
@@ -1,7 +1,7 @@
with import <stockholm/lib>;
{ config, pkgs, ... }: let
cfg = {
- enable = config.tv.Xresources != {};
+ enable = config.services.xserver.enable && config.tv.Xresources != {};
user = config.krebs.build.user;
};
in {
diff --git a/tv/3modules/dnsmasq.nix b/tv/3modules/dnsmasq.nix
index ec927f98a..ab24ac089 100644
--- a/tv/3modules/dnsmasq.nix
+++ b/tv/3modules/dnsmasq.nix
@@ -31,8 +31,9 @@ in {
};
services.dnsmasq.enable = true;
services.dnsmasq.extraConfig = ''
+ bind-interfaces
dhcp-range=${cfg.dhcp-range}
- interface=${cfg.interface}
+ listen-address=${cfg.address}
'';
tv.iptables.extra.filter.INPUT = [
"-i ${cfg.interface} -p tcp -m tcp --dport bootps -j ACCEPT"
diff --git a/tv/5pkgs/haskell/xmonad-tv/src/Paths.hs b/tv/5pkgs/haskell/xmonad-tv/src/Paths.hs
index dd21511b4..6b7235530 100644
--- a/tv/5pkgs/haskell/xmonad-tv/src/Paths.hs
+++ b/tv/5pkgs/haskell/xmonad-tv/src/Paths.hs
@@ -3,6 +3,9 @@ module Paths where
import Helpers.Path
+flameshot :: FilePath
+flameshot = findExecutable "flameshot-once"
+
otpmenu :: FilePath
otpmenu = findExecutable "otpmenu"
diff --git a/tv/5pkgs/haskell/xmonad-tv/src/main.hs b/tv/5pkgs/haskell/xmonad-tv/src/main.hs
index 400c87ab9..c83b411bd 100644
--- a/tv/5pkgs/haskell/xmonad-tv/src/main.hs
+++ b/tv/5pkgs/haskell/xmonad-tv/src/main.hs
@@ -18,11 +18,13 @@ import XMonad.Actions.CycleWS (toggleWS)
import XMonad.Layout.NoBorders ( smartBorders )
import XMonad.Layout.ResizableTile (ResizableTall(ResizableTall))
import XMonad.Layout.ResizableTile (MirrorResize(MirrorExpand,MirrorShrink))
+import qualified XMonad.Prompt
import qualified XMonad.StackSet as W
import Data.Map (Map)
import qualified Data.Map as Map
import XMonad.Hooks.UrgencyHook (SpawnUrgencyHook(..), withUrgencyHook)
-import XMonad.Hooks.ManageHelpers (doCenterFloat)
+import XMonad.Hooks.ManageHelpers (doCenterFloat,doRectFloat)
+import Data.Ratio
import XMonad.Hooks.Place (placeHook, smart)
import XMonad.Actions.PerWorkspaceKeys (chooseAction)
@@ -66,6 +68,8 @@ mainNoArgs = do
composeAll
[ appName =? "fzmenu-urxvt" --> doCenterFloat
, appName =? "pinentry" --> doCenterFloat
+ , title =? "Upload to Imgur" -->
+ doRectFloat (W.RationalRect 0 0 (1 % 8) (1 % 8))
, placeHook (smart (1,0))
]
, startupHook =
@@ -151,8 +155,8 @@ myKeys conf = Map.fromList $
, ((_4 , xK_comma ), sendMessage $ IncMasterN 1)
, ((_4 , xK_period ), sendMessage $ IncMasterN (-1))
- , ((_4 , xK_a ), addWorkspacePrompt def)
- , ((_4 , xK_r ), renameWorkspace def)
+ , ((_4 , xK_a ), addWorkspacePrompt promptXPConfig)
+ , ((_4 , xK_r ), renameWorkspace promptXPConfig)
, ((_4 , xK_Delete ), removeEmptyWorkspace)
, ((_4 , xK_Return ), toggleWS)
@@ -163,6 +167,8 @@ myKeys conf = Map.fromList $
, ((_4, xF86XK_AudioMute), pavucontrol [])
, ((_4, xK_Prior), forkFile Paths.xcalib ["-invert", "-alter"] Nothing)
+
+ , ((0, xK_Print), forkFile Paths.flameshot [] Nothing)
]
where
_4 = mod4Mask
@@ -184,6 +190,9 @@ myKeys conf = Map.fromList $
resetLayout = setLayout $ XMonad.layoutHook conf
+ promptXPConfig =
+ def { XMonad.Prompt.font = myFont }
+
pagerConfig :: PagerConfig
pagerConfig = def