dotfiles/.files/rofi-dev-configs/work-laptop.dhall

112 lines
3.0 KiB
Plaintext

let C = ../rofi-extras/dhall/rofi-dev.dhall
let cryptdir = "${env:HOME as Text}/Documents/.crypt"
let sshKey = "ssh nanobarbie"
let gpgKey = "gpg nanobarbie"
let bwConfig =
\(k : Text) -> C.PasswordConfig.PwdBW C.BitwardenConfig::{ bwKey = k }
let sshData =
\(r : Text) -> C.DataConfig.SSHFSConfig C.SSHFSData::{ sshfsRemote = r }
let sshfsEntry =
\(l : Text) ->
\(m : Text) ->
\(r : Text) ->
{ tKey = l
, tVal =
{ tcParent =
{ deviceMount = { mpPath = m, mpLabel = Some l }
, deviceData = sshData r
}
, tcChildren = [ "ssh" ]
}
}
: C.TreeMap
let crypt = \(b : Text) -> "${cryptdir}/${b}"
let vcName = \(n : Text) -> "Veracrypt (${n})"
let vcryptEntry =
\(l : Text) ->
\(m : Text) ->
\(v : Text) ->
\(k : Text) ->
{ tKey = l
, tVal = C.TreeConfig::{
, tcParent =
{ deviceMount = { mpPath = m, mpLabel = Some l }
, deviceData =
C.DataConfig.VeracryptConfig
{ vcVolume = v, vcPassword = Some (bwConfig (vcName k)) }
}
}
}
: C.TreeMap
let cifsEntry =
\(l : Text) ->
\(m : Text) ->
\(r : Text) ->
\(o : Optional C.CIFSOpts.Type) ->
{ tKey = l
, tVal = C.TreeConfig::{
, tcParent =
{ deviceMount = { mpPath = m, mpLabel = Some l }
, deviceData =
C.DataConfig.CIFSConfig
{ cifsRemote = r
, cifsSudo = True
, cifsPassword = Some
(C.PasswordConfig.PwdPr C.PromptConfig::{=})
, cifsOpts = o
}
}
}
}
let devs =
[ vcryptEntry
"ssh"
"${env:HOME as Text}/.ssh"
(crypt "ssh-config-nanobarbie")
sshKey
, vcryptEntry
"gnupg"
"${env:GNUPGHOME as Text}"
(crypt "gpg-config")
gpgKey
, vcryptEntry "pii" "pii" (crypt "pii") "work vault"
, sshfsEntry "nisaba_wrk" "nisaba_wrk" "nisaba:/wrk/njd2"
, sshfsEntry "nist_dvl" "nist_dvl" "nist-workstation:/mnt/data/Dvl"
, cifsEntry
"flowILS"
"flowILS"
"//elwood.nist.gov/63_MML/63internal/Flow ILS Share"
( Some
C.CIFSOpts::{
, cifsoptsUsername = Some "njd2"
, cifsoptsUID = Some 69444
, cifsoptsGID = Some 36679
}
)
, cifsEntry
"flowBBD"
"flowBBD"
"//Resdata-smb.nist.gov/Div-Shares/644-BBD/644-Flow-Cytometry"
( Some
C.CIFSOpts::{
, cifsoptsUsername = Some "njd2"
, cifsoptsUID = Some 69444
, cifsoptsGID = Some 36679
, cifsoptsDomain = Some "NIST"
}
)
]
in C.StaticConfig::{ scDevices = devs }