diff --git a/.sops.yaml b/.sops.yaml index 96ac4ca..2c0021d 100644 --- a/.sops.yaml +++ b/.sops.yaml @@ -6,17 +6,17 @@ keys: - &serverone age1ykh30xkjz5w6fkjc3u4vsjkfnhkdcdnhgdwtrwkpmwmfpymfaugsckde2q - &portatilo age1wr2fr73q5t0ze0vqnkjwhxgnl9j4z9d6t90g596h7fqrdete95mscks7xp creation_rules: - - path_regex: secrets/computerone.yaml + - path_regex: secrets/computerone.yaml$ key_groups: - age: - *billy - *computerone - - path_regex: secrets/serverone.yaml + - path_regex: secrets/serverone.yaml$ key_groups: - age: - *billy - *serverone - - path_regex: secrets/portatilo.yaml + - path_regex: secrets/portatilo.yaml$ key_groups: - age: - *billy diff --git a/.vscode/settings.json b/.vscode/settings.json index 1cbf6b6..cdf8ce9 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,5 +1,7 @@ { "cSpell.words": [ - "computerone" + "computerone", + "portatilo", + "serverone" ] } \ No newline at end of file diff --git a/secrets/computerone.yaml b/secrets/computerone.yaml index aba3ae3..f5634fb 100644 --- a/secrets/computerone.yaml +++ b/secrets/computerone.yaml @@ -1,5 +1,6 @@ user_password: ENC[AES256_GCM,data:1JTtwRXaMBPub67t/u47w/HpJWBoXy4tvqueOJfKrXij9KMBeXpdeYyei/03cYqdYJo9ZBMXOb3rhS6re96gLUYe2SxtSjpYKQ==,iv:TTDF83w/g5qeB152a7vFsg+DlTDFF93c8jsrf9XjVxM=,tag:yWTe/NkjQblbcD5DLkz34w==,type:str] -ssh_key: ENC[AES256_GCM,data:3OQSe2lmjKTexPJ8X7br7M8Myonv09go/Vkky/Ui5g0kx/N5MWQlajwePHBR1022G9tVUnvOaywkUFdRQaVkDYyDHFjb2p0a9O2GqpNYKR/Xx5zI+PwYud0RC63Zyw/dB8WTD9FMUoJyLzzhtLthIZR0vR7kceqwZSonf92sY34sMgoJC8Hn9MRjY/Pc6ZclUdEYjdCdqsEDbCX16Ir/oqp87qxCUY7WgQtleb3gnuaxIaNYOEa9QFriI4g7Sz5e+38mj79lia7zB0nwhLQrr7KnQl0lfYgmUGOjFB+D5inW0Lrf3rFZvXUzVYILKmDx2iTWLg+hT9qaUtyqKCzXqYiaqo9RqrMGEYLBjuW/OtpSsHmFC5EvXqph+CFb/hgXhpzTVW5HigrD1WdLU+UTofXL/NrNVwUaUJzkLA8pOtYAAHKtL45TDI2r5f2Q+VfNVWTI6s5/iV4qGg/CFYQseOvxZZEsl24T9yxgB2uFN7V45r57OsbITHyq1Sp4lX1mT3dMzbi4W1OiITj7uvF5+KwtyJK3PVcY+L9MaOb26cjCeCk=,iv:AXHZEzQ16D23g/eNhlEQK4Gkqkkf2bleN+w0Kshr/q0=,tag:PXjMvDWfQgwYmR7v4EXQUw==,type:str] +ssh_key: ENC[AES256_GCM,data:8QTp2pi7q6AZagFtbnj3ZJoU78GxpsDJ49e3tofztgW9g/3nPjz6mvCL4ibxlMslvwM3XW95AA5Dvf+zWK3wkZruNlIW2ZdYqG+IaFHBca7RM9xVqd5gyvYOqakhJCsPD4/0LIMWZ2YcRYttzzRmhc8/RCnYLeNFwd96q2q0/+0S2ci+mjlEO4zE7YrAVWS4B4rAwrINGr2VpdPE2PiHDZ2ygyu109xOI1k5UeNawfJvY47VguYAnI60Unz2NAAa9F6BeSsO9APHbLrjAVCcx4H9SasOWbEaXFnqQtJwzmE2KHadfoEIoun8Qm1df8k4PfroLK4LEiwei0w5q9e75oeVoOsEO2eDhalPe/apSjvokRBvQA4eabWEjODg0l/ytab1f89TCqFs+bZX/PWfgrT0RtNQHnnP7dnNbfe1KpLzWGmlJMQf/C7mjjKAc1rIx7PJnqMDcYE6OSNCR0KWiVvkOV1C8NwtdjUNcDTiQ13qBND6hnAwXZrJ1NF2vM1W3PBT3+Kg/bkK/ex0FHcOi6BKhJRvCpHlLq7EaLOssZ21RbY=,iv:3z9ia70iCs0Sm+yxX36k7jJFSH5uUFkM25M4tqu1bIk=,tag:Xc8fc7Xj/G0yZ+HM7KgVOA==,type:str] +cifs_credentials: ENC[AES256_GCM,data:vtFKImuR7bI+gH64XYHu//je3IAfHGUWGVkmMJcIJ87y,iv:8zqHLla42Z7NRMyJPwzSI9bv2HmcltZ96z1E5Jd97uo=,tag:IypPfGcRQ3ZLFKS5xeLfzA==,type:str] sops: kms: [] gcp_kms: [] @@ -24,8 +25,8 @@ sops: d3VtdzFidEhhMmxxdnlaOTJCdnE3VTgKqxDwCsYbU0Sl6cAv43Yi2R99yvqwhgzC LHZheFQM6T1srhLBI03gFr2yu9RA5KmP/3y0LM6CIaoagBKMJrqwGQ== -----END AGE ENCRYPTED FILE----- - lastmodified: "2024-10-18T15:59:21Z" - mac: ENC[AES256_GCM,data:7nODa0wXJDdiWuVSAlZ3GJ2MjX3k9MwwvzKJVv2Ip/Zm6n5gn6g10al34jt2ZHSNxN7wOBsBDQrYcdOrUVP3KmCvugIrVklAuMSaBcW0e9EHEx5yDG1hm/bub2aLLVQuWUdbPtar44CNgssjBxR5V+Uv/V43T+dI2D/Z9QTajHw=,iv:/zcJ7VdiI4jhafUGhxxamK4VzE48BTg0VLlzbr1x3No=,tag:gLYtfHH0uHmVMPAT0ukFCw==,type:str] + lastmodified: "2024-10-19T10:02:49Z" + mac: ENC[AES256_GCM,data:+L5OqKYWL8916tVtumyehIMM13jh6oyBvCYLs06WJJOPtgx3cmqC+j4EoAr6XkpdaOUUSPs2wh+DO4JU4jE9N2kbyEx1CklLA1SXMdNz7Z33XcDp5vCvAAW7x/3s8iTixUoRVUU4ptnJJANZ0BwDFRm7lprDrG++EYF2zcjWCvc=,iv:FbwSOTbOpZw+U4dVb3zBoDOCXAr9LBtFK86PO514r+g=,tag:ogovd1p2IIH544+ZUMi6tA==,type:str] pgp: [] unencrypted_suffix: _unencrypted version: 3.9.1 diff --git a/secrets/portatilo.yaml b/secrets/portatilo.yaml index 270c3a6..fb32dd9 100644 --- a/secrets/portatilo.yaml +++ b/secrets/portatilo.yaml @@ -1,5 +1,6 @@ user_password: ENC[AES256_GCM,data:ia/JQx+/Z2NDz0lNhKpjQjTEb5S7Vi8o5M4agcYkSQEw3o36+Eu45oGav+6S0AWSbf7c6taQdH15NasDzrVvJsu5sqhA28jhhg==,iv:w21HxrGWzkAy4PHahdXx5W6SsjarbyLJTusUAH/Y44k=,tag:eOOpsvrpL+FB93To4zFf0w==,type:str] ssh_key: ENC[AES256_GCM,data:VDf7Z8O+eWm08Lcqypl0CKURmQOwWF9l9zjq6UgyhYnr0dNKd/SmoFig7XqSS/yAJeXMEbEY6QPtsGm7EEA63lMITeK1n9Dg88L+v440L+4+e0+wS9fpYq5Z8ARItiKYSFUdo3Q65BAxv9GpVkM5U63QCoz44Rm9Jm4upRi3spYXGp+CjVSn5LIjdTUIvgFQFT8SAzMHRQFUOOWbG7AABRSbU+7nWMhXLzG+Ua6v1wZn6ElsOUou+ubJq8VpuBgt9bWfEgKe8jYcu55g2WK+JHwcTnEz0SYWm094pd0maotKf19Vo8tkbxlJoOnOS4NUw6wO1wvgHbp3kunwsGWySQ6hLadce4IiEEWB2cpEne6XSmkd/vh7DPFxb3nZlr2MW1A/QNH3kWVQDQ64gsKaDYB3a+XGbLbRvpe0KCrMWTWng/3eajJHP6jllRtviTK4eYOiO0/zrbiKsr//IuQid4P3YbHwKRJB2NiqqM8tc2XD7wRk0CuTXIAN++UImbrr9iFuK99phq4TLax8vzwKmHZRyyWfm/zScFsASo5ksiCHybA=,iv:kbMShCRhLMKBtsPOfknNsKsozlGB0w/L2i+uoAZIxRg=,tag:7l9GpyTjDPa3fvfXqOvUkw==,type:str] +cifs_credentials: ENC[AES256_GCM,data:gj8TnPGV9RAE2bhRUmiFcoIcSDLyAb2fThlFoX3QK2Po,iv:s7jmuKof5FN7OJne42McsPDgjW5+X3GzLGEsYcca8AU=,tag:3GKvkzafrQOJ5c/ZZhkuFA==,type:str] sops: kms: [] gcp_kms: [] @@ -24,8 +25,8 @@ sops: QlRuQ1NLRk1FejIxZmdrbGptSnJrTTAKbajMJmzpUQU6p9p1XwYJgVY4bXLFgb2I iaEy7uQs7PGuDUSLXvVoePOpj3ZEFO8gsuJOJ7iLedoU5MNbC1ttUA== -----END AGE ENCRYPTED FILE----- - lastmodified: "2024-10-18T16:24:36Z" - mac: ENC[AES256_GCM,data:h8sHOqcdfnvChBOQ5UchIyrVpmnUbrQnv56UkuVdByc+PdA5ivJpIGsDeedhluXc+bZb++tqcO9tppU5Pr/94yQrjNDFvcQiGu9QdMIcf/5oY476obSDwO3rwPObQ9cyD3GOQom27jpq1XxRq/14nYY2iL0hdFUB8xhjfWvJ5Yg=,iv:P/RES/RgdokaJ62t9XBu8X1kssNrRy6v5bu3baDXIbE=,tag:i1cq/nnnraiL4wwlo6YqJg==,type:str] + lastmodified: "2024-10-19T10:02:39Z" + mac: ENC[AES256_GCM,data:pAXyU5jmPWkDdeQwKkSAjX1mlOdjQjx+AyS9G+mNHj1JyZGdW3/8uxydivijMl4DwmczQcs8eZw3ECVvCROIJFKibEqIIXg8W+yz6QFbJRFXV3K8hEDps2R0lkO1jVb3aLVtAVHrLvSBIESoArtDTvVRvNXElk83mEyeo1GVtb0=,iv:sXglUmqBhP7nJ2HbcDVIiAKtpzv3pNG4pI3UW7rIgyQ=,tag:/qa9wTGbZxCDhD055gxytg==,type:str] pgp: [] unencrypted_suffix: _unencrypted version: 3.9.1 diff --git a/system/hosts/computerone/default.nix b/system/hosts/computerone/default.nix index 96bb094..2d909a8 100644 --- a/system/hosts/computerone/default.nix +++ b/system/hosts/computerone/default.nix @@ -8,6 +8,8 @@ ../../modules/desktops/qtile.nix ../../modules/graphics/nvidia.nix + ../../modules/cifs-client.nix + ../../modules/desktops ]; diff --git a/system/modules/cifs-client.nix b/system/modules/cifs-client.nix new file mode 100644 index 0000000..9681ae4 --- /dev/null +++ b/system/modules/cifs-client.nix @@ -0,0 +1,38 @@ +{ + pkgs, + config, + lib, + ... +}: +let + # https://nixos.wiki/wiki/Samba#Samba_Client + mount_options = lib.concatStringsSep "," [ + "noauto" + "x-systemd.automount" + "x-systemd.idle-timeout=5s" + "x-systemd.device-timeout=5s" + "x-systemd.mount-timeout=5s" + "uid=1000" + "gid=1000" + "credentials=${config.sops.secrets.cifs_credentials.path}" + ]; +in +{ + environment.systemPackages = [ pkgs.cifs-utils ]; + + sops.secrets.cifs_credentials = { }; + + fileSystems = { + "/mnt/serverone/hdd-generic" = { + device = "//192.168.1.51/nas-hdd"; + fsType = "cifs"; + options = [ mount_options ]; + }; + + "/mnt/serverone/ssd-generic" = { + device = "//192.168.1.51/nas-ssd"; + fsType = "cifs"; + options = [ mount_options ]; + }; + }; +}