From 92957b27ece2d4fb2eb4ce9121dd26ee94985b48 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sun, 30 Mar 2014 00:08:02 -0400 Subject: cabalized and added a wrapper program --- Utility/Network.hs | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 Utility/Network.hs (limited to 'Utility') diff --git a/Utility/Network.hs b/Utility/Network.hs new file mode 100644 index 00000000..62523c9e --- /dev/null +++ b/Utility/Network.hs @@ -0,0 +1,21 @@ +{- network functions + - + - Copyright 2012 Joey Hess + - + - Licensed under the GNU GPL version 3 or higher. + -} + +module Utility.Network where + +import Utility.Process +import Utility.Exception + +import Control.Applicative + +{- Haskell lacks uname(2) bindings, except in the + - Bindings.Uname addon. Rather than depend on that, + - use uname -n when available. -} +getHostname :: IO (Maybe String) +getHostname = catchMaybeIO uname_node + where + uname_node = takeWhile (/= '\n') <$> readProcess "uname" ["-n"] -- cgit v1.2.3