From 88ac2f40812b52220c1e2db290440c5abf42964e Mon Sep 17 00:00:00 2001 From: tv Date: Tue, 27 Nov 2018 12:09:19 +0100 Subject: tv xp332: add utsushi-customized --- tv/2configs/xp-332.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'tv/2configs') diff --git a/tv/2configs/xp-332.nix b/tv/2configs/xp-332.nix index 627401dc6..4a0b0ae16 100644 --- a/tv/2configs/xp-332.nix +++ b/tv/2configs/xp-332.nix @@ -11,7 +11,7 @@ with import ; hardware.sane = { enable = true; extraBackends = [ - pkgs.utsushi + pkgs.utsushi-customized ]; }; @@ -19,7 +19,7 @@ with import ; elem (parseDrvName pkg.name).name [ "imagescan-plugin-networkscan" ]; nixpkgs.overlays = singleton (self: super: { - utsushi = super.utsushi.override { + utsushi-customized = self.utsushi.override { guiSupport = false; jpegSupport = false; networkSupport = true; -- cgit v1.3.1 From 57ce731ffb28adfc854de3caa1987509e1939559 Mon Sep 17 00:00:00 2001 From: tv Date: Wed, 28 Nov 2018 09:55:38 +0100 Subject: tv xmonad: use fzmenu --- tv/2configs/xserver/Xresources.nix | 5 +++++ tv/2configs/xserver/default.nix | 5 +++++ tv/5pkgs/simple/xmonad-tv/default.nix | 13 +++++++++---- 3 files changed, 19 insertions(+), 4 deletions(-) (limited to 'tv/2configs') diff --git a/tv/2configs/xserver/Xresources.nix b/tv/2configs/xserver/Xresources.nix index 1d4044480..b8a4e822b 100644 --- a/tv/2configs/xserver/Xresources.nix +++ b/tv/2configs/xserver/Xresources.nix @@ -50,4 +50,9 @@ pkgs.writeText "Xresources" /* xdefaults */ '' root-urxvt*foreground: #e0c0c0 root-urxvt*BorderColor: #400000 root-urxvt*color0: #800000 + + fzmenu-urxvt*background: rgb:42/23/42 + fzmenu-urxvt*externalBorder: 1 + fzmenu-urxvt*externalBorder: 1 + fzmenu-urxvt*geometry: 70x9 '' diff --git a/tv/2configs/xserver/default.nix b/tv/2configs/xserver/default.nix index dbfa804d2..d1345723d 100644 --- a/tv/2configs/xserver/default.nix +++ b/tv/2configs/xserver/default.nix @@ -63,6 +63,11 @@ in { environment = { DISPLAY = ":${toString config.services.xserver.display}"; + FZMENU_FZF_DEFAULT_OPTS = toString [ + "--color=dark,border:126,bg+:090" + "--inline-info" + ]; + XMONAD_CACHE_DIR = cfg.cacheDir; XMONAD_CONFIG_DIR = cfg.configDir; XMONAD_DATA_DIR = cfg.dataDir; diff --git a/tv/5pkgs/simple/xmonad-tv/default.nix b/tv/5pkgs/simple/xmonad-tv/default.nix index 1168f10c8..a2525e06e 100644 --- a/tv/5pkgs/simple/xmonad-tv/default.nix +++ b/tv/5pkgs/simple/xmonad-tv/default.nix @@ -38,12 +38,12 @@ import Data.Map (Map) import qualified Data.Map as Map -- TODO import XMonad.Layout.WorkspaceDir import XMonad.Hooks.UrgencyHook (SpawnUrgencyHook(..), withUrgencyHook) +import XMonad.Hooks.ManageHelpers (doCenterFloat) -- import XMonad.Layout.Tabbed --import XMonad.Layout.MouseResizableTile import XMonad.Layout.Reflect (reflectVert) import XMonad.Layout.FixedColumn (FixedColumn(..)) import XMonad.Hooks.Place (placeHook, smart) -import XMonad.Hooks.FloatNext (floatNextHook) import XMonad.Actions.PerWorkspaceKeys (chooseAction) import XMonad.Layout.PerWorkspace (onWorkspace) --import XMonad.Layout.BinarySpacePartition @@ -85,7 +85,12 @@ mainNoArgs = do , layoutHook = smartBorders $ FixedColumn 1 20 80 10 ||| Full -- , handleEventHook = myHandleEventHooks <+> handleTimerEvent --, handleEventHook = handleTimerEvent - , manageHook = placeHook (smart (1,0)) <+> floatNextHook + , manageHook = + composeAll + [ appName =? "fzmenu-urxvt" --> doCenterFloat + , appName =? "pinentry" --> doCenterFloat + , placeHook (smart (1,0)) + ] , startupHook = whenJustM (liftIO (lookupEnv "XMONAD_STARTUP_HOOK")) (\path -> forkFile path [] Nothing) @@ -133,8 +138,8 @@ myKeys conf = Map.fromList $ [ ((_4 , xK_Escape ), forkFile "/run/wrappers/bin/slock" [] Nothing) , ((_4S , xK_c ), kill) - , ((_4 , xK_o ), forkFile "${pkgs.otpmenu}/bin/otpmenu" [] Nothing) - , ((_4 , xK_p ), forkFile "${pkgs.pass}/bin/passmenu" ["--type"] Nothing) + , ((_4 , xK_o ), forkFile "${pkgs.fzmenu}/bin/otpmenu" [] Nothing) + , ((_4 , xK_p ), forkFile "${pkgs.fzmenu}/bin/passmenu" [] Nothing) , ((_4 , xK_x ), chooseAction spawnTermAt) , ((_4C , xK_x ), spawnRootTerm) -- cgit v1.3.1 From d5551ed214479317925239a9801384c9c3aa9add Mon Sep 17 00:00:00 2001 From: tv Date: Wed, 28 Nov 2018 14:29:07 +0100 Subject: tv fzmenu-urxvt: add internalBorder --- tv/2configs/xserver/Xresources.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tv/2configs') diff --git a/tv/2configs/xserver/Xresources.nix b/tv/2configs/xserver/Xresources.nix index b8a4e822b..d032efc7d 100644 --- a/tv/2configs/xserver/Xresources.nix +++ b/tv/2configs/xserver/Xresources.nix @@ -53,6 +53,6 @@ pkgs.writeText "Xresources" /* xdefaults */ '' fzmenu-urxvt*background: rgb:42/23/42 fzmenu-urxvt*externalBorder: 1 - fzmenu-urxvt*externalBorder: 1 fzmenu-urxvt*geometry: 70x9 + fzmenu-urxvt*internalBorder: 1 '' -- cgit v1.3.1 From 1d7fddc064fef5e77c48602e3524949893a92997 Mon Sep 17 00:00:00 2001 From: tv Date: Wed, 28 Nov 2018 14:41:56 +0100 Subject: tv xmonad: add currentSystem to executable name This prevents journal messges like: XMonad is recompiling and replacing itself another XMonad process because the current process is called "xmonad" but the compiled configuration should be called "xmonad-x86_64-linux" --- tv/2configs/xserver/default.nix | 4 ++-- tv/5pkgs/simple/xmonad-tv/default.nix | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'tv/2configs') diff --git a/tv/2configs/xserver/default.nix b/tv/2configs/xserver/default.nix index d1345723d..a44ece8b1 100644 --- a/tv/2configs/xserver/default.nix +++ b/tv/2configs/xserver/default.nix @@ -100,8 +100,8 @@ in { "\${XMONAD_CONFIG_DIR}" "\${XMONAD_DATA_DIR}" ]}"; - ExecStart = "${pkgs.xmonad-tv}/bin/xmonad"; - ExecStop = "${pkgs.xmonad-tv}/bin/xmonad --shutdown"; + ExecStart = "${pkgs.xmonad-tv}/bin/xmonad-${currentSystem}"; + ExecStop = "${pkgs.xmonad-tv}/bin/xmonad-${currentSystem} --shutdown"; User = cfg.user.name; WorkingDirectory = cfg.user.home; }; diff --git a/tv/5pkgs/simple/xmonad-tv/default.nix b/tv/5pkgs/simple/xmonad-tv/default.nix index a2525e06e..430e6a809 100644 --- a/tv/5pkgs/simple/xmonad-tv/default.nix +++ b/tv/5pkgs/simple/xmonad-tv/default.nix @@ -1,6 +1,6 @@ { pkgs, ... }: pkgs.writeHaskellPackage "xmonad-tv" { - executables.xmonad = { + executables."xmonad-${builtins.currentSystem}" = { extra-depends = [ "containers" "extra" -- cgit v1.3.1 From 2b9d361f7f8ef6334c4832d6eb87f2b6008e352f Mon Sep 17 00:00:00 2001 From: tv Date: Wed, 28 Nov 2018 17:03:15 +0100 Subject: tv xmonad: wait for shutdown to complete --- tv/2configs/xserver/default.nix | 2 +- tv/5pkgs/simple/xmonad-tv/default.nix | 26 ++++++++++++++++++++++++-- 2 files changed, 25 insertions(+), 3 deletions(-) (limited to 'tv/2configs') diff --git a/tv/2configs/xserver/default.nix b/tv/2configs/xserver/default.nix index a44ece8b1..199ffcaf8 100644 --- a/tv/2configs/xserver/default.nix +++ b/tv/2configs/xserver/default.nix @@ -101,7 +101,7 @@ in { "\${XMONAD_DATA_DIR}" ]}"; ExecStart = "${pkgs.xmonad-tv}/bin/xmonad-${currentSystem}"; - ExecStop = "${pkgs.xmonad-tv}/bin/xmonad-${currentSystem} --shutdown"; + ExecStop = "${pkgs.xmonad-tv}/bin/xmonad-${currentSystem} --shutdown $MAINPID"; User = cfg.user.name; WorkingDirectory = cfg.user.home; }; diff --git a/tv/5pkgs/simple/xmonad-tv/default.nix b/tv/5pkgs/simple/xmonad-tv/default.nix index 97cc29917..ab4be91f3 100644 --- a/tv/5pkgs/simple/xmonad-tv/default.nix +++ b/tv/5pkgs/simple/xmonad-tv/default.nix @@ -19,6 +19,11 @@ pkgs.writeHaskellPackage "xmonad-tv" { module Main where +import System.IO.Error (isDoesNotExistError, tryIOError) +import System.Exit (exitFailure) +import Control.Monad (forever) +import Control.Concurrent (threadDelay) + import Control.Exception import Control.Monad.Extra (whenJustM) import Graphics.X11.ExtraTypes.XF86 @@ -27,6 +32,8 @@ import XMonad import System.IO (hPutStrLn, stderr) import System.Environment (getArgs, getEnv, getEnvironment, lookupEnv) import System.Posix.Process (executeFile) +import System.Posix.Signals (nullSignal, signalProcess) +import System.Posix.Types (ProcessID) import XMonad.Actions.DynamicWorkspaces ( addWorkspacePrompt, renameWorkspace , removeEmptyWorkspace) import XMonad.Actions.GridSelect @@ -57,8 +64,23 @@ myFont = "-schumacher-*-*-*-*-*-*-*-*-*-*-*-iso10646-*" main :: IO () main = getArgs >>= \case - ["--shutdown"] -> sendShutdownEvent - _ -> mainNoArgs + [] -> mainNoArgs + ["--shutdown", pidArg] -> mainShutdown (read pidArg) + args -> hPutStrLn stderr ("bad arguments: " <> show args) >> exitFailure + +mainShutdown :: ProcessID -> IO () +mainShutdown pid = do + sendShutdownEvent + hPutStrLn stderr ("waiting for: " <> show pid) + result <- tryIOError (waitProcess pid) + if isSuccess result + then hPutStrLn stderr ("result: " <> show result <> " [AKA success^_^]") + else hPutStrLn stderr ("result: " <> show result) + where + isSuccess = either isDoesNotExistError (const False) + +waitProcess :: ProcessID -> IO () +waitProcess pid = forever (signalProcess nullSignal pid >> threadDelay 10000) mainNoArgs :: IO () mainNoArgs = do -- cgit v1.3.1 From d1f81ace7241cf751f8a02c102b02bc1c8ad6c07 Mon Sep 17 00:00:00 2001 From: tv Date: Wed, 28 Nov 2018 18:30:19 +0100 Subject: tv urlwatch: remove nixos --- tv/2configs/urlwatch.nix | 5 ----- 1 file changed, 5 deletions(-) (limited to 'tv/2configs') diff --git a/tv/2configs/urlwatch.nix b/tv/2configs/urlwatch.nix index 77947dafa..7467e8e67 100644 --- a/tv/2configs/urlwatch.nix +++ b/tv/2configs/urlwatch.nix @@ -27,11 +27,6 @@ in { # 2014-09-24 ref https://github.com/4z3/xintmap http://www.mathstat.dal.ca/~selinger/quipper/ - ## other - - https://nixos.org/channels/nixos-18.03/git-revision - https://nixos.org/channels/nixos-unstable/git-revision - ## 2014-10-17 ## TODO update ~/src/login/default.nix #http://hackage.haskell.org/package/bcrypt -- cgit v1.3.1