diff --git a/.gitattributes b/.gitattributes deleted file mode 100644 index da8c15f..0000000 --- a/.gitattributes +++ /dev/null @@ -1 +0,0 @@ -flake.lock binary diff --git a/flake.lock b/flake.lock index 6e77084..e0843d6 100644 --- a/flake.lock +++ b/flake.lock @@ -28,11 +28,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1747575206, - "narHash": "sha256-NwmAFuDUO/PFcgaGGr4j3ozG9Pe5hZ/ogitWhY+D81k=", + "lastModified": 1736955230, + "narHash": "sha256-uenf8fv2eG5bKM8C/UvFaiJMZ4IpUFaQxk9OH5t/1gA=", "owner": "ryantm", "repo": "agenix", - "rev": "4835b1dc898959d8547a871ef484930675cb47f1", + "rev": "e600439ec4c273cf11e06fe4d9d906fb98fa097c", "type": "github" }, "original": { @@ -76,11 +76,11 @@ "contador-da-viagem": { "flake": false, "locked": { - "lastModified": 1742610036, - "narHash": "sha256-sY1iheemazmIVJAnoFtut6cN7HX/C5OMDY54UrmCoqE=", + "lastModified": 1742597480, + "narHash": "sha256-aN+Kioc4AWPMyJxfz/zFCo2YdP4YxcPqoUcp46z9KcA=", "ref": "refs/heads/main", - "rev": "efe5ac4a16de7f78824ac89dc987ef635afa5267", - "revCount": 4, + "rev": "29dde9d1965b1f8c1b870185a95859c050ba847d", + "revCount": 3, "type": "git", "url": "https://git.lelgenio.com/lelgenio/contador-da-viagem" }, @@ -163,11 +163,11 @@ ] }, "locked": { - "lastModified": 1744478979, - "narHash": "sha256-dyN+teG9G82G+m+PX/aSAagkC+vUv0SgUw3XkPhQodQ=", + "lastModified": 1700795494, + "narHash": "sha256-gzGLZSiOhf155FW7262kdHo2YDeugp3VuIFb4/GGng0=", "owner": "lnl7", "repo": "nix-darwin", - "rev": "43975d782b418ebf4969e9ccba82466728c2851b", + "rev": "4b9b83d5a92e8c1fbfd8eb27eda375908c11ec4d", "type": "github" }, "original": { @@ -225,11 +225,11 @@ ] }, "locked": { - "lastModified": 1749436314, - "narHash": "sha256-CqmqU5FRg5AadtIkxwu8ulDSOSoIisUMZRLlcED3Q5w=", + "lastModified": 1741786315, + "narHash": "sha256-VT65AE2syHVj6v/DGB496bqBnu1PXrrzwlw07/Zpllc=", "owner": "nix-community", "repo": "disko", - "rev": "dfa4d1b9c39c0342ef133795127a3af14598017a", + "rev": "0d8c6ad4a43906d14abd5c60e0ffe7b587b213de", "type": "github" }, "original": { @@ -243,11 +243,11 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1749410315, - "narHash": "sha256-5H8MuMMSq1WnQcvb1FiDNkKP+uyeZ8HX5GRTMfEOyLI=", + "lastModified": 1742179690, + "narHash": "sha256-s/q3OWRe5m7kwDcAs1BhJEj6aHc5bsBxRnLP7DM77xE=", "owner": "lelgenio", "repo": "dzgui-nix", - "rev": "49adbb1edfb3c25b0cd8256d35673394386065e7", + "rev": "a6d68720c932ac26d549b24f17c776bd2aeb73b4", "type": "github" }, "original": { @@ -297,11 +297,11 @@ "flake-compat_2": { "flake": false, "locked": { - "lastModified": 1747046372, - "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", "owner": "edolstra", "repo": "flake-compat", - "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", "type": "github" }, "original": { @@ -433,54 +433,6 @@ "type": "github" } }, - "git-hooks": { - "inputs": { - "flake-compat": [ - "nixos-mailserver", - "flake-compat" - ], - "gitignore": "gitignore", - "nixpkgs": [ - "nixos-mailserver", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1742649964, - "narHash": "sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco=", - "owner": "cachix", - "repo": "git-hooks.nix", - "rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "git-hooks.nix", - "type": "github" - } - }, - "gitignore": { - "inputs": { - "nixpkgs": [ - "nixos-mailserver", - "git-hooks", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1709087332, - "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", - "type": "github" - } - }, "hello-fonts": { "flake": false, "locked": { @@ -504,16 +456,16 @@ ] }, "locked": { - "lastModified": 1749154018, - "narHash": "sha256-gjN3j7joRvT3a8Zgcylnd4NFsnXeDBumqiu4HmY1RIg=", + "lastModified": 1742234739, + "narHash": "sha256-zFL6zsf/5OztR1NSNQF33dvS1fL/BzVUjabZq4qrtY4=", "owner": "nix-community", "repo": "home-manager", - "rev": "7aae0ee71a17b19708b93b3ed448a1a0952bf111", + "rev": "f6af7280a3390e65c2ad8fd059cdc303426cbd59", "type": "github" }, "original": { "owner": "nix-community", - "ref": "release-25.05", + "ref": "release-24.11", "repo": "home-manager", "type": "github" } @@ -545,11 +497,11 @@ ] }, "locked": { - "lastModified": 1749355504, - "narHash": "sha256-L17CdJMD+/FCBOHjREQLXbe2VUnc3rjffenBbu2Kwpc=", + "lastModified": 1742174123, + "narHash": "sha256-pDNzMoR6m1ZSJToZQ6XDTLVSdzIzmFl1b8Pc3f7iV6Y=", "owner": "Mic92", "repo": "nix-index-database", - "rev": "40a6e15e44b11fbf8f2b1df9d64dbfc117625e94", + "rev": "2cfb4e1ca32f59dd2811d7a6dd5d4d1225f0955c", "type": "github" }, "original": { @@ -562,23 +514,22 @@ "inputs": { "blobs": "blobs", "flake-compat": "flake-compat_2", - "git-hooks": "git-hooks", "nixpkgs": [ "nixpkgs" ], - "nixpkgs-25_05": "nixpkgs-25_05" + "nixpkgs-24_11": "nixpkgs-24_11" }, "locked": { - "lastModified": 1747965231, - "narHash": "sha256-BW3ktviEhfCN/z3+kEyzpDKAI8qFTwO7+S0NVA0C90o=", + "lastModified": 1742413977, + "narHash": "sha256-NkhM9GVu3HL+MiXtGD0TjuPCQ4GFVJPBZ8KyI2cFDGU=", "owner": "simple-nixos-mailserver", "repo": "nixos-mailserver", - "rev": "53007af63fade28853408370c4c600a63dd97f41", + "rev": "b4fbffe79c00f19be94b86b4144ff67541613659", "type": "gitlab" }, "original": { "owner": "simple-nixos-mailserver", - "ref": "nixos-25.05", + "ref": "master", "repo": "nixos-mailserver", "type": "gitlab" } @@ -599,29 +550,28 @@ "type": "github" } }, - "nixpkgs-25_05": { + "nixpkgs-24_11": { "locked": { - "lastModified": 1747610100, - "narHash": "sha256-rpR5ZPMkWzcnCcYYo3lScqfuzEw5Uyfh+R0EKZfroAc=", + "lastModified": 1734083684, + "narHash": "sha256-5fNndbndxSx5d+C/D0p/VF32xDiJCJzyOqorOYW4JEo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ca49c4304acf0973078db0a9d200fd2bae75676d", + "rev": "314e12ba369ccdb9b352a4db26ff419f7c49fa84", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixos-25.05", - "repo": "nixpkgs", - "type": "github" + "id": "nixpkgs", + "ref": "nixos-24.11", + "type": "indirect" } }, "nixpkgs-unstable": { "locked": { - "lastModified": 1749285348, - "narHash": "sha256-frdhQvPbmDYaScPFiCnfdh3B/Vh81Uuoo0w5TkWmmjU=", + "lastModified": 1742422364, + "narHash": "sha256-mNqIplmEohk5jRkqYqG19GA8MbQ/D4gQSK0Mu4LvfRQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "3e3afe5174c561dee0df6f2c2b2236990146329f", + "rev": "a84ebe20c6bc2ecbcfb000a50776219f48d134cc", "type": "github" }, "original": { @@ -678,26 +628,26 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1749727998, - "narHash": "sha256-mHv/yeUbmL91/TvV95p+mBVahm9mdQMJoqaTVTALaFw=", + "lastModified": 1742388435, + "narHash": "sha256-GheQGRNYAhHsvPxWVOhAmg9lZKkis22UPbEHlmZMthg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "fd487183437963a59ba763c0cc4f27e3447dd6dd", + "rev": "b75693fb46bfaf09e662d09ec076c5a162efa9f6", "type": "github" }, "original": { "id": "nixpkgs", - "ref": "nixos-25.05", + "ref": "nixos-24.11", "type": "indirect" } }, "nixpkgs_6": { "locked": { - "lastModified": 1747958103, - "narHash": "sha256-qmmFCrfBwSHoWw7cVK4Aj+fns+c54EBP8cGqp/yK410=", + "lastModified": 1735554305, + "narHash": "sha256-zExSA1i/b+1NMRhGGLtNfFGXgLtgo+dcuzHzaWA6w3Q=", "owner": "nixos", "repo": "nixpkgs", - "rev": "fe51d34885f7b5e3e7b59572796e1bcb427eccb1", + "rev": "0e82ab234249d8eee3e8c91437802b32c74bb3fd", "type": "github" }, "original": { @@ -758,11 +708,11 @@ "ranger-icons": { "flake": false, "locked": { - "lastModified": 1749128401, - "narHash": "sha256-qvWqKVS4C5OO6bgETBlVDwcv4eamGlCUltjsBU3gAbA=", + "lastModified": 1736375293, + "narHash": "sha256-ck53eG+mGIQ706sUnEHbJ6vY1/LYnRcpq94JXzwnGTQ=", "owner": "alexanderjeurissen", "repo": "ranger_devicons", - "rev": "1bcaff0366a9d345313dc5af14002cfdcddabb82", + "rev": "f227f212e14996fbb366f945ec3ecaf5dc5f44b0", "type": "github" }, "original": { @@ -850,11 +800,11 @@ ] }, "locked": { - "lastModified": 1749592509, - "narHash": "sha256-VunQzfZFA+Y6x3wYi2UE4DEQ8qKoAZZCnZPUlSoqC+A=", + "lastModified": 1742406979, + "narHash": "sha256-r0aq70/3bmfjTP+JZs4+XV5SgmCtk1BLU4CQPWGtA7o=", "owner": "Mic92", "repo": "sops-nix", - "rev": "50754dfaa0e24e313c626900d44ef431f3210138", + "rev": "1770be8ad89e41f1ed5a60ce628dd10877cb3609", "type": "github" }, "original": { @@ -1010,11 +960,11 @@ "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1749194973, - "narHash": "sha256-eEy8cuS0mZ2j/r/FE0/LYBSBcIs/MKOIVakwHVuqTfk=", + "lastModified": 1742370146, + "narHash": "sha256-XRE8hL4vKIQyVMDXykFh4ceo3KSpuJF3ts8GKwh5bIU=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "a05be418a1af1198ca0f63facb13c985db4cb3c5", + "rev": "adc195eef5da3606891cedf80c0d9ce2d3190808", "type": "github" }, "original": { @@ -1025,11 +975,11 @@ }, "vpsadminos": { "locked": { - "lastModified": 1749716966, - "narHash": "sha256-aF+YOXv07qI7Q267gqapUcAsoQkI3+EcmZczatq6wkg=", + "lastModified": 1742222981, + "narHash": "sha256-EDhfWimpzUnpH5h/FQ3oYw/Kaq4Cx1E5nRofDQyI3aE=", "owner": "vpsfreecz", "repo": "vpsadminos", - "rev": "2d991bb5109350801a381bff097809b76ee962f5", + "rev": "14da38b9a49bf156e06f20ed02533a0549e6d487", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 0818b6a..8994009 100644 --- a/flake.nix +++ b/flake.nix @@ -1,10 +1,10 @@ { description = "My system config"; inputs = { - nixpkgs.url = "nixpkgs/nixos-25.05"; + nixpkgs.url = "nixpkgs/nixos-24.11"; nixpkgs-unstable.url = "nixpkgs/nixos-unstable"; - home-manager.url = "github:nix-community/home-manager/release-25.05"; + home-manager.url = "github:nix-community/home-manager/release-24.11"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; vpsadminos.url = "github:vpsfreecz/vpsadminos"; @@ -32,7 +32,7 @@ }; nixos-mailserver = { - url = "gitlab:simple-nixos-mailserver/nixos-mailserver/nixos-25.05"; + url = "gitlab:simple-nixos-mailserver/nixos-mailserver/master"; inputs.nixpkgs.follows = "nixpkgs"; }; @@ -150,6 +150,7 @@ modules = [ ./hosts/monolith ./system/monolith-gitlab-runner.nix + ./system/monolith-bitbucket-runner.nix ./system/monolith-forgejo-runner.nix ./system/nix-serve.nix ] ++ common_modules; diff --git a/hosts/monolith/default.nix b/hosts/monolith/default.nix index 753047a..280cc3f 100644 --- a/hosts/monolith/default.nix +++ b/hosts/monolith/default.nix @@ -144,7 +144,7 @@ in ACTION=="add" SUBSYSTEM=="usb" ATTR{idVendor}=="046d" ATTR{idProduct}=="c547" ATTR{power/wakeup}="disabled" # Force all disks to use mq-deadline scheduler # For some reason "noop" is used by default which is kinda bad when io is saturated - ACTION=="add|change", KERNEL=="sd[a-z]*[0-9]*|mmcblk[0-9]*p[0-9]*|nvme[0-9]*n[0-9]*p[0-9]*", ATTR{../queue/scheduler}="kyber" + ACTION=="add|change", KERNEL=="sd[a-z]*[0-9]*|mmcblk[0-9]*p[0-9]*|nvme[0-9]*n[0-9]*p[0-9]*", ATTR{../queue/scheduler}="mq-deadline" ''; boot.tmp = { diff --git a/hosts/phantom/default.nix b/hosts/phantom/default.nix index 1b0d3cb..9111434 100644 --- a/hosts/phantom/default.nix +++ b/hosts/phantom/default.nix @@ -53,7 +53,7 @@ # Set your time zone. time.timeZone = "America/Sao_Paulo"; # Select internationalisation properties. - i18n.defaultLocale = "pt_BR.UTF-8"; + i18n.defaultLocale = "pt_BR.utf8"; boot.kernel.sysctl."fs.inotify.max_user_watches" = 1048576; diff --git a/hosts/phantom/email.nix b/hosts/phantom/email.nix index 105113b..1951629 100644 --- a/hosts/phantom/email.nix +++ b/hosts/phantom/email.nix @@ -36,8 +36,6 @@ hashedPassword = "$2b$05$DcA9xMdvHqqQMZw2.zybI.vfKsQAJtaQ/JB.t9AHu6psstWq97m2C"; }; }; - - enableManageSieve = true; }; # Prefer ipv4 and use main ipv6 to avoid reverse DNS issues @@ -54,7 +52,7 @@ $config['smtp_host'] = "tls://${config.mailserver.fqdn}:587"; $config['smtp_user'] = "%u"; $config['smtp_pass'] = "%p"; - $config['plugins'] = [ "carddav", "archive", "managesieve" ]; + $config['plugins'] = [ "carddav", "archive" ]; ''; }; } diff --git a/hosts/phantom/nextcloud.nix b/hosts/phantom/nextcloud.nix index 28d76a1..a7ef9f3 100644 --- a/hosts/phantom/nextcloud.nix +++ b/hosts/phantom/nextcloud.nix @@ -1,6 +1,7 @@ { config, pkgs, + inputs, ... }: { @@ -10,7 +11,6 @@ hostName = "cloud.lelgenio.com"; https = true; config = { - dbtype = "sqlite"; # TODO: move to single postgres db adminpassFile = config.age.secrets.phantom-nextcloud.path; }; }; diff --git a/overlays/default.nix b/overlays/default.nix index a032271..8886897 100644 --- a/overlays/default.nix +++ b/overlays/default.nix @@ -28,6 +28,14 @@ rec { ]; } ); + nerdfonts_fira_hack = ( + final.nerdfonts.override { + fonts = [ + "FiraCode" + "Hack" + ]; + } + ); } ); diff --git a/pkgs/factorio-headless/default.nix b/pkgs/factorio-headless/default.nix index 8d81f1d..46064b5 100644 --- a/pkgs/factorio-headless/default.nix +++ b/pkgs/factorio-headless/default.nix @@ -1,10 +1,10 @@ { factorio-headless, pkgs }: factorio-headless.overrideAttrs (_: rec { - version = "2.0.47"; + version = "2.0.39"; src = pkgs.fetchurl { name = "factorio_headless_x64-${version}.tar.xz"; url = "https://www.factorio.com/get-download/${version}/headless/linux64"; - hash = "sha256-8PMgx3YWpHlCJ+tjenC1VxCPMUGkYzJ2WTIgp2j0miY="; + hash = "sha256-D4o9DkN5e1/02LhdfDNLCVo/B9mqf4Cx6H+Uk5qT3zQ="; }; }) diff --git a/scripts/bmenu b/scripts/bmenu index 8abad08..c793269 100755 --- a/scripts/bmenu +++ b/scripts/bmenu @@ -8,10 +8,13 @@ if test "$argv[1]" = "run" test -n "$argv[2]" && set t "$argv[2]" || set t "terminal" + test -n "$i3SOCK" && set wrapper 'i3-msg exec --' + test -n "$SWAYSOCK" && set wrapper 'swaymsg exec --' + exec j4-dmenu-desktop \ --dmenu="bmenu start -p Iniciar:" \ --term "$t" \ - --i3-ipc \ + --wrapper="$wrapper" \ --no-generic end diff --git a/scripts/default.nix b/scripts/default.nix index 9b0b728..d9824b5 100644 --- a/scripts/default.nix +++ b/scripts/default.nix @@ -74,7 +74,6 @@ ]; wpass = [ wdmenu - ripgrep fd myPass sd diff --git a/scripts/wpass b/scripts/wpass index 52bcdff..97e4671 100755 --- a/scripts/wpass +++ b/scripts/wpass @@ -29,7 +29,7 @@ main() { test -n "$entry" || exit 0 - username=`pass show "$entry" 2>/dev/null | rg -m1 '(login|user|email): (.*)' -r '$2'` + username=`pass show "$entry" 2>/dev/null | perl -ne 'print $2 if /^(login|user|email): (.*)/'` password=`pass show "$entry" 2>/dev/null | head -n 1` otp=`pass otp "$entry" 2>/dev/null` || true diff --git a/secrets/monolith/default.yaml b/secrets/monolith/default.yaml index 0dbc4ae..8bd8e12 100644 --- a/secrets/monolith/default.yaml +++ b/secrets/monolith/default.yaml @@ -4,8 +4,16 @@ gitlab-runners: thoreb-telemetria-nix: ENC[AES256_GCM,data:zrZvG4be08ulpo7itbrprKK5csCMLvzZjrszfMw1XiJP0FyRTUd9nHgHpbAzbjj2KyT7kKngoZAyengvaTEhkT9sUi1pdGnvajAH8BDDOD0g4LJIHFl4,iv:3bSsTzU7gHx+MchuPg9kmb5xEDugmGPje8Jw74NpRJI=,tag:zffRr77lWbyLt7o/mywb5A==,type:str] thoreb-itinerario-nix: ENC[AES256_GCM,data:UdAAD0V895sFoEYR56sCG2LlpZugJ0K/nwkTygzWOnbTSmBRAcIQ8qVFPZGw+K+XMSLiCyio6Jp7k8AYP0K1VYm+6aEP3OkqR9FCLQTJgXo=,iv:UGUby50BYkn13OzItk6zZmxc5+SnbZZa4bebQHIow2A=,tag:LjDg3deWwdH2T71EtPo6jA==,type:str] docker-images-token: ENC[AES256_GCM,data:GGB/KSkjdAyhFKEspAh91ItbqEDf7K/LZSGSn+Jp7SxRfXpDzHIiMD8XJ9PTkGLeQGN4ug1i2nTYPS7d/P5OALWDU+1NPiV9nPdG0w7GERfu4g==,iv:6roabdOKX9xFMf0hWlECd73+943R+hFLos0e2dOpzns=,tag:LrASFc4DtN7aQ+3oOW/p/w==,type:str] - wopus-gitlab-nix: ENC[AES256_GCM,data:asE7J0d58x9VfQFWc07f5T4s5NZ+/VqMQo66EX93J0LbJ4iI5YjvrrIE4pSI1e4Nz/SRQhltaJ0DfSH0+qgjD4wnAONPRi3UlFbSdGWS2bwwRtWe+Nci2krrUFxV2i/ZVE3CwCkNe4mqtII=,iv:gKrD/LhzI+jnDnX6CdxoHfjpiRdrsuRYJF9rTc8SffM=,tag:TczDGSU3gdKmERjBJ7tP/A==,type:str] +bitbucket-runners: + wopus-runner-1: ENC[AES256_GCM,data:gtH0T5n8qMYpvSv5ciN8+ScGlFDf9xE0FTxNP97vT/qsOCcaItTE+5P+DFcWw46onLED+1c+u0sArFbEsT3f8lyco9b+0l99uOQAxLZQzAXYH8zGye1UnwUtytkci2PHu5c8kTpIWHXyZ1IOYNGWkermeab57ANzOkM1LbkHyAjS6VTh0I60LfAOdHOw5FDFL8d1d9oWxLloOe9USLPqHjC023EpCUT2YuyHoPCTpBu8Kb/2HfV0wkAKaB3dvVrKwXCj+bfP6+bjQ3uMzVO/7jxPmnSGBfvyZ+Hlg5goJ6bSAqQWmnPPnQ96FgQfe8su5ML9qNIp9/7eNiL6Rv6Vhxe0hHbE5wsZ/58grcg/LrugeWJvUJ9THhwcTwO8Pkvwlq0XM9seUY2NV+LCK3bLQ4IWDjWkU1IHg6+nihTcvl1iD6UIGMgqGoB/v05WVzHb+GcE2fFuSuhVHfa5RMyboELOJoFrqZiXGhY=,iv:ZakLafxYQCDd1Zw8T83Xfj+YwAQKna9LC6ognJqtifA=,tag:bwBObfdMIvJfRrOG04NtxA==,type:str] + wopus-runner-2: ENC[AES256_GCM,data:gg8merZMFbf396hdJY7zmKQndT3GzB7NeGZAs3C0au8Zd7OFAg9vcQcFcxNA3kZGJZqmFTR/ycWJwhYr9fhlfFuPhDynVvgJAqoYtvC2MUDiOMD/d3DlfwFjQ6cOGTrvFuY1kkgSFb4OFdrVC1eiTDrGygFmYnYcqTKn/t5Ttqi+cHZNzFzVzdVLvaLCYxltM5g45zn+fXYxYwCfqyb32/M1XTnnwIGiataGxEX5oWhVV4zqeLO4ZIYPSby5AVvIMJ/zqvqaeVVY52GLDcTKrj3thbZxMQLWN3/lOA0uYhi3L/WM8Gx+JMEIbSICcuT7QXu4w4PA+opcx9GnsMCK2/egzS+cNPJ4vGZCdVD/jh6A9zVEJAgXdsHXNXFHmMPt7DcgrCQiub62og4kBY4G/Rcg4UN7sb3v3qyBpGbCGHGRjCFc+wdHpom0yDOG2cwcqfN49pC2R7Ag2BisFQ/5A+DPmKnvGG3kt9s=,iv:5g5XiDecYqi4JNRkZubgPJECBQdZ6rBeojgFe6Etebk=,tag:HRy5bFSbfxKTb5e13lGtgg==,type:str] + wopus-runner-3: ENC[AES256_GCM,data:f9pLYR8t51HtPpLyXysIVaDAhxDrmktJH93E7rb7imtKwK7hRhR8usnvHTcknLfD7BMvStAIYefdGt19u7PrQu6vqc19bEcNbnK5OH4KBP6+X47oMgBYtbIGXH+t3dSDt22fSIoppTwdX7/Kf4vqesfN8K7EunETvFR86oyyKdy15mvXr0XUO4us4HZjnIOBEnOm1P/V8hk5JcCpRuo+8ZYmBe5gzq5pTnqnYlPE1EovM7eDMg72J7ev07h50qvySrAqmNiqDcXfTPQ2TzuHx3XxAYqFybf1L6P9OnLB6RDAlpoFJ0h8dSg2tzC2+amYsBP0UIBK/ZhWvvAjpX+MZrTASjenh/tefDcNdbsXDOr7A4i/261z4rC0r+97INglCN1N/SZg51iBHiRAVV1zibDLfioR5+eBIykWAtjILMoYU+zOcr0E8K0I9jQGMtpnYmvHJqV0DVcdfZpJptrPUUy+lQ/iZVcPpLs=,iv:grzvVsfpUzywjNE4jvTxXKG3TYajrvSsQgfOgtafvIo=,tag:K1B6crN0ckLk0EYBtGHDkw==,type:str] + wopus-runner-4: ENC[AES256_GCM,data:D1Zq0BtPuACnutAbUcj3gYSMLuIZcMuqc/1mEFmitEG0tBFMWhkabS+8lXcp8sb1DM0LTDMEwgMB9FVyFb670MKQNEncqQtaNJtY1BxS3SolovDAM/I+i6YGvd4X8jX99d+7ZNR6xGBWJ/dW8rz4QnIM8Eh3FDOqaFa/ltfyPKP9IZ2uZi67C/n8Q/OSdgMQkt+QxhgJfSghE1iruPwxyGlqv+E4SZNI/fQQMjX0Lh7z02ms58yyMtjO71YbukV/JXFRsdJrqY2wfH/6NlZbsKideoSxluBRVqmbW6KQd7dUT819KbOSu9CFdgThtVCU8qiv3jbAbn8D5xRy4AAOEfSqRLXJoj7otCqr47R/8+0BdS3aztFBjL3lDmprMWZ4+LD55fvczfpxUF9ox1mhcjIvCvZJJL06XsST1XRXa7i2fr4/a/XhCmQgIzar5IYxSC9OjuHp6jLsTaY3ZUgid5W1L1n8uWSmA98=,iv:O9caRG//brERiIhuMrsFdTz6TnPY0rdQnvHEu0P42yM=,tag:hrmwLX/CRhZfammJ2nfTPw==,type:str] sops: + kms: [] + gcp_kms: [] + azure_kv: [] + hc_vault: [] age: - recipient: age1zrgu7w8059xydagm60phnffghvfe9h2ca58cx8qwagqpyfuvs9fqw79c8h enc: | @@ -25,8 +33,8 @@ sops: aFVxcDFhaGdYekRWRVFIWnRsZndtZFkKgsvxOFHOcO306Z9FkucA1fDOpZA8N1/h jYmIgcKTFgWoSCvux67lK30jFsYp7sm5z6WxxDYsGcoQ/+pxoUX2jQ== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-06-24T11:51:22Z" - mac: ENC[AES256_GCM,data:onyjWlFsH/9YGSi2nGsPmZjhE4nFVQ5Jiwfi4s9KC7NetKD7Reyz2JY6i3YuZspBn3Jvbq8nOKVPGzttMAG+IrqQEv6+MxrCOEnJZXZcqocDNg7dACOXmJB5iwpFVdKscesTH2SScf7Pl/q6l9KOFjFuaZeBB7dlxHVA5zzCVOU=,iv:lEbxg2HfxU6ikgWSpUNAGIfgaz7DnZjXnLWcmsvt0A4=,tag:/Ag37QuJj9Xy/u20Nhy05Q==,type:str] + lastmodified: "2025-03-07T21:28:04Z" + mac: ENC[AES256_GCM,data:4lOafZQ6PP38CByulzA/J86sw+TpQhj40s1lTRXqUtpt72yH8nQK8dXpw0dNYvDBtDpKRvNTHZubzalEua6n2lCQL7rsZ2+fo6FJ4ht2Kb70dddDcWEyrfyZQ2FaKC5L/QjqM0SbIfPszNvyQ8wIaOoMfNJBis5QOjRSGDAcJm8=,iv:LLT0oJW+3KNe1nKphCK0c5FPIuh8GfnDrvNDCFhP4NM=,tag:rPbVY7L1qxNc3aCfv77FAg==,type:str] pgp: - created_at: "2025-03-07T22:49:16Z" enc: |- @@ -44,4 +52,4 @@ sops: -----END PGP MESSAGE----- fp: 0FECE8316E74BA6F44EFC21A2F8F21CE8721456B unencrypted_suffix: _unencrypted - version: 3.10.2 + version: 3.9.4-unstable diff --git a/system/fonts.nix b/system/fonts.nix index 73aa8f7..2815563 100644 --- a/system/fonts.nix +++ b/system/fonts.nix @@ -5,7 +5,6 @@ noto-fonts noto-fonts-cjk-sans noto-fonts-emoji - nerd-fonts.fira-code - nerd-fonts.hack + nerdfonts_fira_hack ]; } diff --git a/system/gitlab-runner.nix b/system/gitlab-runner.nix index 8db526f..c50e1b9 100644 --- a/system/gitlab-runner.nix +++ b/system/gitlab-runner.nix @@ -1,55 +1,51 @@ { pkgs, lib, ... }: -let - installNixScript = pkgs.writeScriptBin "install-nix" '' - mkdir -p -m 0755 /nix/var/log/nix/drvs - mkdir -p -m 0755 /nix/var/nix/gcroots - mkdir -p -m 0755 /nix/var/nix/profiles - mkdir -p -m 0755 /nix/var/nix/temproots - mkdir -p -m 0755 /nix/var/nix/userpool - mkdir -p -m 1777 /nix/var/nix/gcroots/per-user - mkdir -p -m 1777 /nix/var/nix/profiles/per-user - mkdir -p -m 0755 /nix/var/nix/profiles/per-user/root - mkdir -p -m 0700 "$HOME/.nix-defexpr" - - . ${pkgs.nix}/etc/profile.d/nix.sh - - ${pkgs.nix}/bin/nix-env -i ${ - lib.concatStringsSep " " ( - with pkgs; - [ - nix - cacert - git - openssh - docker - ] - ) - } - ''; -in { - mkNixRunner = authenticationTokenConfigFile: { - # File should contain at least these two variables: - # `CI_SERVER_URL` - # `REGISTRATION_TOKEN` - inherit authenticationTokenConfigFile; # 2 - dockerImage = "alpine:3.18.2"; - dockerVolumes = [ - "/etc/nix/nix.conf:/etc/nix/nix.conf:ro" - "/nix/store:/nix/store:ro" - "/nix/var/nix/db:/nix/var/nix/db:ro" - "/nix/var/nix/daemon-socket:/nix/var/nix/daemon-socket:ro" - "/tmp:/tmp" - "/var/run/docker.sock:/var/run/docker.sock" - "/var/lib/docker/containers:/var/lib/docker/containers" - ]; - dockerDisableCache = true; - preBuildScript = "\". ${lib.getExe installNixScript}\""; - environmentVariables = { - ENV = "/etc/profile"; - USER = "root"; - NIX_REMOTE = "daemon"; - NIX_SSL_CERT_FILE = "/nix/var/nix/profiles/default/etc/ssl/certs/ca-bundle.crt"; + mkNixRunner = + authenticationTokenConfigFile: with lib; rec { + # File should contain at least these two variables: + # `CI_SERVER_URL` + # `REGISTRATION_TOKEN` + inherit authenticationTokenConfigFile; # 2 + dockerImage = "alpine:3.18.2"; + dockerAllowedImages = [ dockerImage ]; + dockerVolumes = [ + "/etc/nix/nix.conf:/etc/nix/nix.conf:ro" + "/nix/store:/nix/store:ro" + "/nix/var/nix/db:/nix/var/nix/db:ro" + "/nix/var/nix/daemon-socket:/nix/var/nix/daemon-socket:ro" + ]; + dockerDisableCache = true; + preBuildScript = pkgs.writeScript "setup-container" '' + mkdir -p -m 0755 /nix/var/log/nix/drvs + mkdir -p -m 0755 /nix/var/nix/gcroots + mkdir -p -m 0755 /nix/var/nix/profiles + mkdir -p -m 0755 /nix/var/nix/temproots + mkdir -p -m 0755 /nix/var/nix/userpool + mkdir -p -m 1777 /nix/var/nix/gcroots/per-user + mkdir -p -m 1777 /nix/var/nix/profiles/per-user + mkdir -p -m 0755 /nix/var/nix/profiles/per-user/root + mkdir -p -m 0700 "$HOME/.nix-defexpr" + + . ${pkgs.nix}/etc/profile.d/nix.sh + + ${pkgs.nix}/bin/nix-env -i ${ + concatStringsSep " " ( + with pkgs; + [ + nix + cacert + git + openssh + ] + ) + } + ''; + environmentVariables = { + ENV = "/etc/profile"; + USER = "root"; + NIX_REMOTE = "daemon"; + PATH = "/nix/var/nix/profiles/default/bin:/nix/var/nix/profiles/default/sbin:/bin:/sbin:/usr/bin:/usr/sbin"; + NIX_SSL_CERT_FILE = "/nix/var/nix/profiles/default/etc/ssl/certs/ca-bundle.crt"; + }; }; - }; } diff --git a/system/locale.nix b/system/locale.nix index e2c7e81..07e7175 100644 --- a/system/locale.nix +++ b/system/locale.nix @@ -2,7 +2,7 @@ { time.timeZone = "America/Sao_Paulo"; environment.variables.TZ = config.time.timeZone; - i18n.defaultLocale = "pt_BR.UTF-8"; + i18n.defaultLocale = "pt_BR.utf8"; # Configure keymap in X11 services.xserver.xkb = { diff --git a/system/monolith-bitbucket-runner.nix b/system/monolith-bitbucket-runner.nix new file mode 100644 index 0000000..17d462b --- /dev/null +++ b/system/monolith-bitbucket-runner.nix @@ -0,0 +1,50 @@ +{ + config, + pkgs, + ... +}: + +let + mkRunner = secret: { + image = "docker-public.packages.atlassian.com/sox/atlassian/bitbucket-pipelines-runner:latest"; + volumes = [ + "/tmp:/tmp" + "/var/run/docker.sock:/var/run/docker.sock" + "/var/lib/docker/containers:/var/lib/docker/containers:ro" + ]; + environmentFiles = [ secret ]; + }; + + secretConf = { + sopsFile = ../secrets/monolith/default.yaml; + }; +in +{ + virtualisation.docker = { + enable = true; + daemon.settings = { + # needed by bitbucket runner ??? + log-driver = "json-file"; + log-opts = { + max-size = "10m"; + max-file = "3"; + }; + }; + }; + + virtualisation.oci-containers.backend = "docker"; + + virtualisation.oci-containers.containers = { + bitbucket-runner-1 = mkRunner config.sops.secrets."bitbucket-runners/wopus-runner-1".path; + bitbucket-runner-2 = mkRunner config.sops.secrets."bitbucket-runners/wopus-runner-2".path; + bitbucket-runner-3 = mkRunner config.sops.secrets."bitbucket-runners/wopus-runner-3".path; + bitbucket-runner-4 = mkRunner config.sops.secrets."bitbucket-runners/wopus-runner-4".path; + }; + + sops.secrets = { + "bitbucket-runners/wopus-runner-1" = secretConf; + "bitbucket-runners/wopus-runner-2" = secretConf; + "bitbucket-runners/wopus-runner-3" = secretConf; + "bitbucket-runners/wopus-runner-4" = secretConf; + }; +} diff --git a/system/monolith-gitlab-runner.nix b/system/monolith-gitlab-runner.nix index 6f1f7b3..28a0ecd 100644 --- a/system/monolith-gitlab-runner.nix +++ b/system/monolith-gitlab-runner.nix @@ -18,8 +18,6 @@ in thoreb-telemetria-nix = mkNixRunner config.sops.secrets."gitlab-runners/thoreb-telemetria-nix".path; thoreb-itinerario-nix = mkNixRunner config.sops.secrets."gitlab-runners/thoreb-itinerario-nix".path; - wopus-gitlab-nix = mkNixRunner config.sops.secrets."gitlab-runners/wopus-gitlab-nix".path; - default = { # File should contain at least these two variables: # `CI_SERVER_URL` @@ -41,8 +39,5 @@ in "gitlab-runners/docker-images-token" = { sopsFile = ../secrets/monolith/default.yaml; }; - "gitlab-runners/wopus-gitlab-nix" = { - sopsFile = ../secrets/monolith/default.yaml; - }; }; } diff --git a/system/sound.nix b/system/sound.nix index 40dd701..f04e513 100644 --- a/system/sound.nix +++ b/system/sound.nix @@ -1,6 +1,6 @@ { pkgs, ... }: { - services.pulseaudio.enable = false; + hardware.pulseaudio.enable = false; services.pipewire = { enable = true; wireplumber.enable = true; diff --git a/user/firefox.nix b/user/firefox.nix index d15e569..5e38a56 100644 --- a/user/firefox.nix +++ b/user/firefox.nix @@ -1,15 +1,23 @@ { config, pkgs, + lib, ... }: let + inherit (config.my) desktop; inherit (config.my.theme) color; bugfixedFirefox = pkgs.firefox-devedition-unwrapped // { requireSigning = false; allowAddonSideload = true; }; + + swayCustomization = '' + #titlebar { display: none !important; } + #TabsToolbar { display: none !important; } + #sidebar-header { display: none !important; } + ''; in { config = { @@ -27,15 +35,15 @@ in url = "https://addons.mozilla.org/firefox/downloads/file/4202411/sponsorblock-5.4.29.xpi"; hash = "sha256-7Xqc8cyQNylMe5/dgDOx1f2QDVmz3JshDlTueu6AcSg="; }) - # (pkgs.fetchFirefoxAddon { - # name = "tree-style-tab"; - # url = "https://addons.mozilla.org/firefox/downloads/file/4197314/tree_style_tab-3.9.19.xpi"; - # hash = "sha256-u2f0elVPj5N/QXa+5hRJResPJAYwuT9z0s/0nwmFtVo="; - # }) + (pkgs.fetchFirefoxAddon { + name = "tree-style-tab"; + url = "https://addons.mozilla.org/firefox/downloads/file/4197314/tree_style_tab-3.9.19.xpi"; + hash = "sha256-u2f0elVPj5N/QXa+5hRJResPJAYwuT9z0s/0nwmFtVo="; + }) (pkgs.fetchFirefoxAddon { name = "ublock-origin"; - url = "https://addons.mozilla.org/firefox/downloads/file/4492375/ublock_origin-1.64.0.xpi"; - hash = "sha256-ueHIaL0awd78q/LgF3bRqQ7/ujSwf+aiE1DUXwIuDp8="; + url = "https://addons.mozilla.org/firefox/downloads/file/4290466/ublock_origin-1.58.0.xpi"; + hash = "sha256-RwxWmUpxdNshV4rc5ZixWKXcCXDIfFz+iJrGMr0wheo="; }) (pkgs.fetchFirefoxAddon { name = "user_agent_string_switcher"; @@ -55,15 +63,10 @@ in hash = "sha256-lKLX6IWWtliRdH1Ig33rVEB4DVfbeuMw0dfUPV/mSSI="; }) (pkgs.fetchFirefoxAddon { - name = "unhook"; - url = "https://addons.mozilla.org/firefox/downloads/file/4263531/youtube_recommended_videos-1.6.7.xpi"; - hash = "sha256-u21ouN9IyOzkTkFSeDz+QBp9psJ1F2Nmsvqp6nh0DRU="; + name = "invidious_redirect"; + url = "https://addons.mozilla.org/firefox/downloads/file/4292924/invidious_redirect_2-1.16.xpi"; + hash = "sha256-ApCc+MNmW9Wd/5seV6npePQVEaszT/rhD9EB7HGiUb8="; }) - # (pkgs.fetchFirefoxAddon { - # name = "invidious_redirect"; - # url = "https://addons.mozilla.org/firefox/downloads/file/4292924/invidious_redirect_2-1.16.xpi"; - # hash = "sha256-ApCc+MNmW9Wd/5seV6npePQVEaszT/rhD9EB7HGiUb8="; - # }) (pkgs.fetchFirefoxAddon { name = "substitoot"; @@ -88,14 +91,13 @@ in dev-edition-default = { isDefault = true; search.force = true; - search.default = "ddg"; + search.default = "DuckDuckGo"; settings = { "devtools.theme" = "auto"; "toolkit.legacyUserProfileCustomizations.stylesheets" = true; + "browser.tabs.inTitlebar" = if desktop == "sway" then 0 else 1; "sidebar.position_start" = false; # Move sidebar to the right - "browser.tabs.groups.enabled" = true; - # enable media RDD to allow gpu acceleration "media.rdd-ffmpeg.enabled" = true; "media.rdd-ffvpx.enabled" = true; @@ -112,6 +114,8 @@ in "media.ffmpeg.vaapi.enabled" = true; "media.ffvpx.enabled" = true; + "gfx.webrender.all" = true; + # Enable installing non signed extensions "extensions.langpacks.signatures.required" = false; "xpinstall.signatures.required" = false; @@ -123,6 +127,8 @@ in "devtools.debugger.remote-enabled" = true; }; userChrome = '' + ${lib.optionalString (desktop == "sway") swayCustomization} + #sidebar-main { background-color: ${color.bg}; } @@ -136,8 +142,12 @@ in }; wayland.windowManager.sway = { extraConfig = '' - exec firefox-devedition + exec firefox ''; }; + home.sessionVariables = { + MOZ_ENABLE_WAYLAND = "1"; + MOZ_DISABLE_RDD_SANDBOX = "1"; + }; }; } diff --git a/user/gnome.nix b/user/gnome.nix index 9a3562b..776f095 100644 --- a/user/gnome.nix +++ b/user/gnome.nix @@ -43,7 +43,7 @@ lib.mkIf (config.my.desktop == "gnome") { qt6Packages.qtstyleplugin-kvantum ]; - services.gpg-agent.pinentry.package = pkgs.pinentry-gnome; + services.gpg-agent.pinentryPackage = pkgs.pinentry-gnome; xdg.defaultApplications = { enable = lib.mkForce false; diff --git a/user/home.nix b/user/home.nix index 1778052..31e3871 100644 --- a/user/home.nix +++ b/user/home.nix @@ -36,7 +36,6 @@ ./pass.nix ./pqiv.nix ./zathura.nix - ./satty ./man.nix ./mpd.nix ./sway @@ -153,7 +152,7 @@ text-editor = lib.mkDefault "kak.desktop"; image-viewer = lib.mkDefault "pqiv.desktop"; video-player = lib.mkDefault "mpv.desktop"; - web-browser = lib.mkDefault "firefox-devedition.desktop"; + web-browser = lib.mkDefault "firefox.desktop"; document-viewer = lib.mkDefault "org.pwmt.zathura.desktop"; file-manager = lib.mkDefault "thunar.desktop"; archive-manager = "engrampa.desktop"; diff --git a/user/kakoune/default.nix b/user/kakoune/default.nix index fa63e6b..acc76fa 100644 --- a/user/kakoune/default.nix +++ b/user/kakoune/default.nix @@ -79,12 +79,9 @@ in src = pkgs.fetchFromGitHub { owner = "natasky"; repo = pname; - rev = "1cc6baeb14b773916eb9209469aa77b3cfa67a0a"; - sha256 = "sha256-3PLxG9UtT0MMSibvTviXQIgTH3rApZ3WSbNCEH3c7HE="; + rev = "0cd144841e64124d3c313769a82be2c5f2588ab6"; + hash = "sha256-ZvtwS3UKHL/KmsekymN3Ou6hK1FqcTsQbZMmrfkwa4w="; }; - buildInputs = with pkgs; [ - python3Minimal - ]; }) ]; extraConfig = diff --git a/user/kakoune/filetypes.kak b/user/kakoune/filetypes.kak index b9d19f5..01b0175 100644 --- a/user/kakoune/filetypes.kak +++ b/user/kakoune/filetypes.kak @@ -16,15 +16,15 @@ hook global WinSetOption filetype=nix %{ } hook global BufCreate .*\.json %{ - set buffer formatcmd "prettier --stdin-filepath=%val{buffile}" + set buffer formatcmd 'prettier --parser json' } hook global BufCreate .*\.ya?ml %{ - set buffer formatcmd "prettier --stdin-filepath=%val{buffile}" + set buffer formatcmd 'prettier --parser yaml' } hook global BufCreate .*\.html %{ - set buffer formatcmd "prettier --stdin-filepath=%val{buffile}" + set buffer formatcmd 'prettier --parser html' } hook global BufCreate .*\.component\.html %{ @@ -43,23 +43,11 @@ hook global BufCreate .*\.php %{ } hook global BufCreate .*\.js %{ - set buffer formatcmd "prettier --stdin-filepath=%val{buffile}" -} - -hook global BufCreate .*\.jsx %{ - set buffer formatcmd "prettier --stdin-filepath=%val{buffile}" -} - -hook global BufCreate .*\.ts %{ - set buffer formatcmd "prettier --stdin-filepath=%val{buffile}" -} - -hook global BufCreate .*\.tsx %{ - set buffer formatcmd "prettier --stdin-filepath=%val{buffile}" + set buffer formatcmd 'prettier --parser babel' } hook global BufCreate .*\.scss %{ - set buffer formatcmd "prettier --stdin-filepath=%val{buffile}" + set buffer formatcmd 'prettier --parser scss' } hook global BufCreate .*\.vue %{ diff --git a/user/ranger/rc.conf b/user/ranger/rc.conf index ad71849..3936f36 100644 --- a/user/ranger/rc.conf +++ b/user/ranger/rc.conf @@ -27,10 +27,10 @@ set confirm_on_delete multiple # Use non-default path for file preview script? # ranger ships with scope.sh, a script that calls external programs (see # README.md for dependencies) to preview images, archives, etc. -# set preview_script ~/.config/ranger/scope.sh +set preview_script ~/.config/ranger/scope.sh # Use the external preview script or display simple plain text or image previews? -# set use_preview_script true +set use_preview_script true # Automatically count files in the directory, even before entering them? set automatically_count_files true @@ -40,7 +40,7 @@ set automatically_count_files true set open_all_images true # Be aware of version control systems and display information. -set vcs_aware false +set vcs_aware true # State of the four backends git, hg, bzr, svn. The possible states are # disabled, local (only show local info), enabled (show local and remote diff --git a/user/satty/config.toml b/user/satty/config.toml deleted file mode 100644 index 84075cb..0000000 --- a/user/satty/config.toml +++ /dev/null @@ -1,63 +0,0 @@ -[general] -# Start Satty in fullscreen mode -fullscreen = true -# Exit directly after copy/save action -early-exit = true -# Draw corners of rectangles round if the value is greater than 0 (0 disables rounded corners) -corner-roundness = 12 -# Select the tool on startup [possible values: pointer, crop, line, arrow, rectangle, text, marker, blur, brush] -initial-tool = "brush" -# Configure the command to be called on copy, for example `wl-copy` -copy-command = "wl-copy" -# Increase or decrease the size of the annotations -# annotation-size-factor = 2 -# Filename to use for saving action. Omit to disable saving to file. Might contain format specifiers: https://docs.rs/chrono/latest/chrono/format/strftime/index.html -# output-filename = "/tmp/test-%Y-%m-%d_%H:%M:%S.png" -# After copying the screenshot, save it to a file as well -# save-after-copy = false -# Hide toolbars by default -# default-hide-toolbars = false -# Experimental: whether window focus shows/hides toolbars. This does not affect initial state of toolbars, see default-hide-toolbars. -# focus-toggles-toolbars = false -# The primary highlighter to use, the other is accessible by holding CTRL at the start of a highlight [possible values: block, freehand] -primary-highlighter = "block" -# Disable notifications -disable-notifications = true -# Actions to trigger on right click (order is important) -# [possible values: save-to-clipboard, save-to-file, exit] -# actions-on-right-click = [] -# Actions to trigger on Enter key (order is important) -# [possible values: save-to-clipboard, save-to-file, exit] -# actions-on-enter = ["save-to-clipboard"] -# Actions to trigger on Escape key (order is important) -# [possible values: save-to-clipboard, save-to-file, exit] -# actions-on-escape = ["exit"] -# Action to perform when the Enter key is pressed [possible values: save-to-clipboard, save-to-file] -# Deprecated: use actions-on-enter instead -action-on-enter = "save-to-clipboard" -# Right click to copy -# Deprecated: use actions-on-right-click instead -# right-click-copy = false -# request no window decoration. Please note that the compositor has the final say in this. At this point. requires xdg-decoration-unstable-v1. -# no-window-decoration = true -# experimental feature: adjust history size for brush input smooting (0: disabled, default: 0, try e.g. 5 or 10) -# brush-smooth-history-size = 10 - -# Font to use for text annotations -[font] -family = "Roboto" -style = "Bold" - -# Custom colours for the colour palette -[color-palette] -# These will be shown in the toolbar for quick selection -palette = [ - "#ff0000", - "#00ffff", - "#a52a2a", - "#dc143c", - "#ff1493", - "#ffd700", - "#008000", -] - diff --git a/user/satty/default.nix b/user/satty/default.nix deleted file mode 100644 index 5709b77..0000000 --- a/user/satty/default.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ - pkgs, - lib, - config, - ... -}: -let - cfg = config.my.satty; -in -{ - options.my.satty.enable = lib.mkEnableOption { }; - - config = lib.mkIf cfg.enable { - xdg.configFile."satty/config.toml" = { - source = ./config.toml; - }; - - home.packages = with pkgs; [ - satty - ]; - }; -} diff --git a/user/sway/default.nix b/user/sway/default.nix index 5fbd379..046ae07 100644 --- a/user/sway/default.nix +++ b/user/sway/default.nix @@ -32,7 +32,6 @@ in my.swaylock.enable = true; my.mpd.enable = true; my.zathura.enable = true; - my.satty.enable = true; my.waybar.enable = true; my.gammastep.enable = true; @@ -124,12 +123,9 @@ in indicator = true; }; - services.gpg-agent.pinentry.package = pkgs.pinentry-all; + services.gpg-agent.pinentryPackage = pkgs.pinentry-all; - xdg.configFile."OpenTabletDriver/settings.json" = { - force = true; - source = ./open-tablet-driver.json; - }; + xdg.configFile."OpenTabletDriver/settings.json".source = ./open-tablet-driver.json; home.packages = with pkgs; [ mySway diff --git a/user/sway/mako.nix b/user/sway/mako.nix index 6c78c9f..af6c673 100644 --- a/user/sway/mako.nix +++ b/user/sway/mako.nix @@ -20,28 +20,26 @@ in config = lib.mkIf cfg.enable { services.mako = { enable = true; + borderSize = 2; + padding = "5"; + margin = "15"; + layer = "overlay"; - settings = { - border-size = 2; - padding = "5"; - margin = "15"; - layer = "overlay"; + font = "${font.interface} ${toString font.size.small}"; + textColor = color.txt; - font = "${font.interface} ${toString font.size.small}"; - text-color = color.txt; + backgroundColor = color.bg; + borderColor = accent.color; + progressColor = "over ${accent.color}88"; - background-color = color.bg; - border-color = accent.color; - progress-color = "over ${accent.color}88"; + defaultTimeout = 10000; - default-timeout = 10000; - - "app-name=volumesh" = { - "default-timeout" = "5000"; - "group-by" = "app-name"; - "format" = "%s\\n%b"; - }; - }; + extraConfig = '' + [app-name=volumesh] + default-timeout=5000 + group-by=app-name + format=%s\n%b + ''; # # {{@@ header() @@}} # # text diff --git a/user/sway/sway-binds.nix b/user/sway/sway-binds.nix index ae71cf4..fd05236 100644 --- a/user/sway/sway-binds.nix +++ b/user/sway/sway-binds.nix @@ -172,7 +172,7 @@ let "${mod}+Return" = "exec ${terminal}"; "${mod}+Ctrl+Return" = "exec thunar"; "${mod}+Shift+s" = '' - exec grim - | satty --filename - --output-filename "$(xdg-user-dir PICTURES)"/Screenshots/satty-$(date '+%Y%m%d-%H:%M:%S').png + exec grim - | satty --filename - --fullscreen --output-filename "$(xdg-user-dir PICTURES)"/Screenshots/satty-$(date '+%Y%m%d-%H:%M:%S').png ''; "${mod}+Ctrl+v" = "exec wl-paste | tesseract -l por - - | wl-copy"; "${mod}+k" = "exec showkeys"; diff --git a/user/sway/theme.nix b/user/sway/theme.nix index 600f596..731d12a 100644 --- a/user/sway/theme.nix +++ b/user/sway/theme.nix @@ -55,7 +55,7 @@ lib.mkIf (desktop == "sway") { qt = { enable = true; platformTheme.name = "gtk3"; - style.name = "kvantum"; + style.name = "qt5ct"; }; dconf.settings = { @@ -70,6 +70,28 @@ lib.mkIf (desktop == "sway") { }; }; + # fonts.fontconfig.enable = true; + xdg.configFile = { + "qt5ct/qt5ct.conf".text = '' + [Appearance] + # color_scheme_path=/nix/store/f07mk0vrm47jxw3y5v99hxncy0w4vcyq-qt5ct-1.5/share/qt5ct/colors/darker.conf + custom_palette=false + icon_theme=${icon_theme} + standard_dialogs=default + style=kvantum-dark + + # [Fonts] + # fixed=@Variant(\0\0\0@\0\0\0\x1c\0H\0\x61\0\x63\0k\0 \0N\0\x65\0r\0\x64\0 \0\x46\0o\0n\0t@(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10) + # general=@Variant(\0\0\0@\0\0\0\x1e\0L\0i\0\x62\0\x65\0r\0\x61\0t\0i\0o\0n\0 \0S\0\x61\0n\0s@(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10) + ''; + "kdedefaults/kdeglobals".text = '' + [General] + ColorScheme=BreezeDark + + [Icons] + Theme=${icon_theme} + ''; + }; services.xsettingsd = { enable = true; settings = { @@ -83,6 +105,11 @@ lib.mkIf (desktop == "sway") { }; home.packages = with pkgs; [ + libsForQt5.qt5ct + libsForQt5.qtstyleplugin-kvantum + qt6Packages.qt6ct + qt6Packages.qtstyleplugin-kvantum + pkgs.bibata-cursors pkgs.orchis_theme_compact pkgs.papirus_red @@ -92,6 +119,7 @@ lib.mkIf (desktop == "sway") { hack-font font-awesome_5 fira-code + nerdfonts_fira_hack material-wifi-icons ]; } diff --git a/user/variables.nix b/user/variables.nix index 65bc69a..84823d3 100644 --- a/user/variables.nix +++ b/user/variables.nix @@ -116,6 +116,6 @@ rec { dmenu = "bmenu"; desktop = "sway"; - browser = "firefox-devedition"; + browser = "firefox"; editor = "kakoune"; } diff --git a/user/vscode/default.nix b/user/vscode/default.nix index e9a97cb..b8afdfd 100644 --- a/user/vscode/default.nix +++ b/user/vscode/default.nix @@ -4,7 +4,7 @@ programs.vscode = { enable = true; package = pkgs.vscodium; - profiles.default.extensions = with pkgs.vscode-extensions; [ + extensions = with pkgs.vscode-extensions; [ jnoortheen.nix-ide github.github-vscode-theme rust-lang.rust-analyzer diff --git a/user/waybar/default.nix b/user/waybar/default.nix index 5af72bc..fc95ff1 100644 --- a/user/waybar/default.nix +++ b/user/waybar/default.nix @@ -234,19 +234,23 @@ in }; } ]; - style = pkgs.replaceVars ./style.css { - accent_color = accent.color; + style = builtins.readFile ( + pkgs.substituteAll { + src = ./style.css; - color_bg = color.bg; - color_bg_dark = color.bg_dark; - color_bg_light = color.bg_light; - color_txt = color.txt; + accent_color = accent.color; - font_interface = font.interface; + color_bg = color.bg; + color_bg_dark = color.bg_dark; + color_bg_light = color.bg_light; + color_txt = color.txt; - font_size_big = "${toString font.size.big}px"; - font_size_medium = "${toString font.size.medium}px"; - }; + font_interface = font.interface; + + font_size_big = "${toString font.size.big}px"; + font_size_medium = "${toString font.size.medium}px"; + } + ); }; home.packages = with pkgs; [ waybar ]; }; diff --git a/user/xdg-dirs.nix b/user/xdg-dirs.nix index c4036c2..a9e1c9b 100644 --- a/user/xdg-dirs.nix +++ b/user/xdg-dirs.nix @@ -1,5 +1,8 @@ { config, + pkgs, + lib, + inputs, ... }: let @@ -21,4 +24,9 @@ in videos = "${HOME}/VĂ­deos"; }; }; + + home.sessionVariables = { + CARGO_HOME = "${config.xdg.dataHome}/cargo"; + RUSTUP_HOME = "${config.xdg.dataHome}/rustup"; + }; }