From 916a9ed923e3759012206317a38efaa957b5737d Mon Sep 17 00:00:00 2001 From: Hadi <112569860+anotherhadi@users.noreply.github.com> Date: Tue, 3 Dec 2024 19:36:15 +0100 Subject: [PATCH] Switch from Firefox to Zen, ... Former-commit-id: 7add142ab10ae16729d15c83c042cf9b96f62223 --- docs/TODO.md | 1 + flake.lock | 37 ++++++++++++- flake.nix | 1 + home/programs/firefox/default.nix | 7 +++ home/programs/nvim/plugins/lsp.nix | 1 + home/programs/zen/default.nix | 85 ++++++++++++++++++++++++++++++ home/system/mime/default.nix | 8 +-- hosts/laptop/home.nix | 21 +++++++- 8 files changed, 154 insertions(+), 7 deletions(-) create mode 100644 home/programs/zen/default.nix diff --git a/docs/TODO.md b/docs/TODO.md index f1e7850..db755c2 100644 --- a/docs/TODO.md +++ b/docs/TODO.md @@ -7,3 +7,4 @@ feel free to contribute <3 ([CONTRIBUTING.md](CONTRIBUTING.md)) - [ ] PIA Vpn (issue in progress) - [ ] Webcord (system24 theme? Tui) - [ ] check gvolpe/nix-config +- [ ] diff --git a/flake.lock b/flake.lock index e65d6ce..30f2f6c 100644 --- a/flake.lock +++ b/flake.lock @@ -911,6 +911,22 @@ "type": "github" } }, + "nixpkgs_8": { + "locked": { + "lastModified": 1727348695, + "narHash": "sha256-J+PeFKSDV+pHL7ukkfpVzCOO7mBSrrpJ3svwBFABbhI=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "1925c603f17fc89f4c8f6bf6f631a802ad85d784", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixvim": { "inputs": { "devshell": "devshell", @@ -1066,7 +1082,8 @@ "pia": "pia", "sops-nix": "sops-nix", "spicetify-nix": "spicetify-nix", - "stylix": "stylix" + "stylix": "stylix", + "zen-browser": "zen-browser" } }, "sf-arabic": { @@ -1404,6 +1421,24 @@ "repo": "xdg-desktop-portal-hyprland", "type": "github" } + }, + "zen-browser": { + "inputs": { + "nixpkgs": "nixpkgs_8" + }, + "locked": { + "lastModified": 1727721329, + "narHash": "sha256-QYlWZwUSwrM7BuO+dXclZIwoPvBIuJr6GpFKv9XKFPI=", + "owner": "MarceColl", + "repo": "zen-browser-flake", + "rev": "e6ab73f405e9a2896cce5956c549a9cc359e5fcc", + "type": "github" + }, + "original": { + "owner": "MarceColl", + "repo": "zen-browser-flake", + "type": "github" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix index 47a257f..17bfcdb 100644 --- a/flake.nix +++ b/flake.nix @@ -42,6 +42,7 @@ inputs.nixpkgs.follows = "nixpkgs"; }; nur.url = "github:nix-community/NUR"; + zen-browser.url = "github:MarceColl/zen-browser-flake"; }; outputs = inputs@{ nixpkgs, ... }: { diff --git a/home/programs/firefox/default.nix b/home/programs/firefox/default.nix index 95db6f9..488704f 100644 --- a/home/programs/firefox/default.nix +++ b/home/programs/firefox/default.nix @@ -1,3 +1,4 @@ +# Not using this file anymore, but keeping it for reference { pkgs, config, ... }: let accent = "#${config.lib.stylix.colors.base0D}"; @@ -76,6 +77,12 @@ let }; }; in { + + home.file."homepage" = { + source = "${homepage}/build"; + recursive = true; + }; + stylix.targets.firefox.profileNames = [ "default" ]; programs.firefox = { enable = true; diff --git a/home/programs/nvim/plugins/lsp.nix b/home/programs/nvim/plugins/lsp.nix index 59a2bea..5fc0065 100644 --- a/home/programs/nvim/plugins/lsp.nix +++ b/home/programs/nvim/plugins/lsp.nix @@ -7,6 +7,7 @@ bashls.enable = true; clangd.enable = true; gopls.enable = true; + eslint.enable = true; nixd = { enable = true; extraOptions = { diff --git a/home/programs/zen/default.nix b/home/programs/zen/default.nix new file mode 100644 index 0000000..aef30fe --- /dev/null +++ b/home/programs/zen/default.nix @@ -0,0 +1,85 @@ +{ pkgs, config, inputs, ... }: +let + accent = "#${config.lib.stylix.colors.base0D}"; + background = "#${config.lib.stylix.colors.base00}"; + foreground = "#${config.lib.stylix.colors.base05}"; + muted = "#${config.lib.stylix.colors.base03}"; + + settings = '' + { + "config": { + "title" : "Welcome Home", + "openLinksInNewTab": false, + "locale": "fr-FR", + "colors": { + "primary": "${accent}", + "background": "${background}", + "foreground": "${foreground}", + "muted": "#${muted}" + }, + "folders": [ + { + "name": "Bookmarks", + "links": [ + {"title": "MyNixOs", "url": "https://mynixos.com", "icon": "󱄅"}, + {"title": "Github", "url": "https://github.com", "icon": ""}, + {"title": "Proton", "url": "https://mail.proton.me/u/0/inbox", "icon": ""}, + {"title": "Cloudflare One", "url": "https://one.dash.cloudflare.com/", "icon": ""}, + {"title": "Chat GPT", "url": "https://chat.openai.com/", "icon": "󰭹"}, + {"title": "Nixvim", "url": "https://nix-community.github.io/nixvim/", "icon": ""}, + {"title": "Hyprland Wiki", "url": "https://wiki.hyprland.org/", "icon": "󰖬"}, + {"title": "Youtube", "url": "https://youtube.com", "icon": "󰗃"}, + {"title": "Figma", "url": "https://figma.com", "icon": ""}, + {"title": "Server", "url": "https://home.anotherhadi.com", "icon": ""} + ] + }, + { + "name": "Work", + "links": [ + {"title": "Outlook", "url": "https://outlook.office.com/mail/", "icon": "󰴢"}, + {"title": "Office", "url": "https://www.office.com/?auth=2", "icon": "󰏆"}, + {"title": "Teams", "url": "https://teams.microsoft.com/_", "icon": "󰊻"} + ] + } + ] + } + } + ''; + + homepage = pkgs.buildNpmPackage { + pname = "homepage"; + version = "0.0.0"; + + src = pkgs.fetchFromGitHub { + owner = "anotherhadi"; + repo = "homepage"; + rev = "b77d35ed3596eb451bd2ec78063d7cc6e73c773d"; + hash = "sha256-j/40922kfAh6zqJ4IRYpr66YXNNYsxuXwZ0aiJFJea0="; + }; + + # npmDepsHash = lib.fakeHash; + npmDepsHash = "sha256-bG+CHTq2Rst3JMxsjAC81KhK+G7WwsTVD1eyP87g0z4="; + + buildPhase = '' + npm install + cp ${ + pkgs.writeText "src/routes/config.json" settings + } src/routes/config.json + npm run build + mkdir $out + mv build $out + ''; + + meta = { + description = "homepage"; + homepage = "https://github.com/anotherhadi/homepage"; + }; + }; +in { + home.file."homepage" = { + source = "${homepage}/build"; + recursive = true; + }; + + home.packages = with pkgs; [ inputs.zen-browser.packages."${system}".default ]; +} diff --git a/home/system/mime/default.nix b/home/system/mime/default.nix index 1aa6b6f..56c9f6b 100644 --- a/home/system/mime/default.nix +++ b/home/system/mime/default.nix @@ -23,10 +23,10 @@ "image/jpeg" = "imv.desktop"; "image/jpg" = "imv.desktop"; "image/webp" = "imv.desktop"; - "image/gif" = "firefox.desktop"; - "x-scheme-handler/http" = "firefox.desktop"; - "x-scheme-handler/https" = "firefox.desktop"; - "text/html" = "firefox.desktop"; + "image/gif" = "zen.desktop"; + "x-scheme-handler/http" = "zen.desktop"; + "x-scheme-handler/https" = "zen.desktop"; + "text/html" = "zen.desktop"; "application/pdf" = "zathura.desktop"; }; }; diff --git a/hosts/laptop/home.nix b/hosts/laptop/home.nix index 5b1881e..458557d 100644 --- a/hosts/laptop/home.nix +++ b/hosts/laptop/home.nix @@ -1,4 +1,4 @@ -{ pkgs, config, ... }: { +{ pkgs, config, inputs, ... }: { imports = [ ./variables.nix @@ -17,7 +17,7 @@ ../../home/programs/thunar ../../home/programs/lazygit ../../home/programs/nh - ../../home/programs/firefox + ../../home/programs/zen ../../home/programs/server-page # Scripts @@ -76,7 +76,19 @@ # cava # Backup + firefox vscode + + # Temp + mpv + pnpm + + # FIXME: Temporary, for a course on Kubernetes + terraform + ansible + azure-cli + k3d + kubectl ]; # Import my profile picture, used by the hyprpanel dashboard @@ -86,5 +98,10 @@ stateVersion = "24.05"; }; + # FIXME: Temporary, for a course on Kubernetes + networking.extraHosts = '' + 127.0.0.1 super-ai-croquette.local + ''; + programs.home-manager.enable = true; }