diff --git a/flake.lock b/flake.lock index 322ea3f..d2b22c3 100644 --- a/flake.lock +++ b/flake.lock @@ -383,24 +383,6 @@ "inputs": { "nixpkgs-lib": "nixpkgs-lib_2" }, - "locked": { - "lastModified": 1749398372, - "narHash": "sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_4": { - "inputs": { - "nixpkgs-lib": "nixpkgs-lib_3" - }, "locked": { "lastModified": 1769996383, "narHash": "sha256-AnYjnFWgS49RlqX7LrC4uA+sCCDBj0Ry/WOJ5XWAsa0=", @@ -605,9 +587,7 @@ "hyprutils": "hyprutils", "hyprwayland-scanner": "hyprwayland-scanner", "hyprwire": "hyprwire", - "nixpkgs": [ - "nixpkgs-unstable" - ], + "nixpkgs": "nixpkgs_4", "pre-commit-hooks": "pre-commit-hooks", "systems": "systems_3", "xdph": "xdph" @@ -893,7 +873,7 @@ "crane": "crane", "fenix": "fenix", "flake-utils": "flake-utils", - "nixpkgs": "nixpkgs_4" + "nixpkgs": "nixpkgs_5" }, "locked": { "lastModified": 1768868561, @@ -994,28 +974,6 @@ "type": "github" } }, - "mango": { - "inputs": { - "flake-parts": "flake-parts_3", - "nixpkgs": [ - "nixpkgs-unstable" - ], - "scenefx": "scenefx" - }, - "locked": { - "lastModified": 1771732288, - "narHash": "sha256-N1H7LMWXYNn7zN9ghp4vHlBs4O/Rw/+ZEoPUpm9ozw4=", - "owner": "DreamMaoMao", - "repo": "mangowc", - "rev": "6b2d694b234cae9876eb81e27991439eb51860f1", - "type": "github" - }, - "original": { - "owner": "DreamMaoMao", - "repo": "mangowc", - "type": "github" - } - }, "microvm": { "inputs": { "nixpkgs": [ @@ -1074,7 +1032,7 @@ "minhook-src": "minhook-src", "mini-src": "mini-src", "minizip-src": "minizip-src", - "nixpkgs": "nixpkgs_5", + "nixpkgs": "nixpkgs_6", "re2-src": "re2-src", "websocketpp-src": "websocketpp-src", "zlib-src": "zlib-src" @@ -1167,7 +1125,7 @@ "inputs": { "flake-compat": "flake-compat_5", "nix-index-database": "nix-index-database", - "nixpkgs": "nixpkgs_6" + "nixpkgs": "nixpkgs_7" }, "locked": { "lastModified": 1771150922, @@ -1270,8 +1228,8 @@ "nixcord": { "inputs": { "flake-compat": "flake-compat_6", - "flake-parts": "flake-parts_4", - "nixpkgs": "nixpkgs_7" + "flake-parts": "flake-parts_3", + "nixpkgs": "nixpkgs_8" }, "locked": { "lastModified": 1771375681, @@ -1319,21 +1277,6 @@ } }, "nixpkgs-lib_2": { - "locked": { - "lastModified": 1748740939, - "narHash": "sha256-rQaysilft1aVMwF14xIdGS3sj1yHlI6oKQNBRTF40cc=", - "owner": "nix-community", - "repo": "nixpkgs.lib", - "rev": "656a64127e9d791a334452c6b6606d17539476e2", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nixpkgs.lib", - "type": "github" - } - }, - "nixpkgs-lib_3": { "locked": { "lastModified": 1769909678, "narHash": "sha256-cBEymOf4/o3FD5AZnzC3J9hLbiZ+QDT/KDuyHXVJOpM=", @@ -1396,6 +1339,22 @@ "type": "github" } }, + "nixpkgs_10": { + "locked": { + "lastModified": 1771008912, + "narHash": "sha256-gf2AmWVTs8lEq7z/3ZAsgnZDhWIckkb+ZnAo5RzSxJg=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "a82ccc39b39b621151d6732718e3e250109076fa", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs_2": { "locked": { "lastModified": 1771309086, @@ -1429,6 +1388,22 @@ } }, "nixpkgs_4": { + "locked": { + "lastModified": 1766070988, + "narHash": "sha256-G/WVghka6c4bAzMhTwT2vjLccg/awmHkdKSd2JrycLc=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "c6245e83d836d0433170a16eb185cefe0572f8b8", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_5": { "locked": { "lastModified": 1760284886, "narHash": "sha256-TK9Kr0BYBQ/1P5kAsnNQhmWWKgmZXwUQr4ZMjCzWf2c=", @@ -1444,7 +1419,7 @@ "type": "github" } }, - "nixpkgs_5": { + "nixpkgs_6": { "locked": { "lastModified": 1770115704, "narHash": "sha256-KHFT9UWOF2yRPlAnSXQJh6uVcgNcWlFqqiAZ7OVlHNc=", @@ -1460,7 +1435,7 @@ "type": "github" } }, - "nixpkgs_6": { + "nixpkgs_7": { "locked": { "lastModified": 1771008912, "narHash": "sha256-gf2AmWVTs8lEq7z/3ZAsgnZDhWIckkb+ZnAo5RzSxJg=", @@ -1476,7 +1451,7 @@ "type": "github" } }, - "nixpkgs_7": { + "nixpkgs_8": { "locked": { "lastModified": 1770617025, "narHash": "sha256-1jZvgZoAagZZB6NwGRv2T2ezPy+X6EFDsJm+YSlsvEs=", @@ -1492,7 +1467,7 @@ "type": "github" } }, - "nixpkgs_8": { + "nixpkgs_9": { "locked": { "lastModified": 1771208521, "narHash": "sha256-X01Q3DgSpjeBpapoGA4rzKOn25qdKxbPnxHeMLNoHTU=", @@ -1508,22 +1483,6 @@ "type": "github" } }, - "nixpkgs_9": { - "locked": { - "lastModified": 1771008912, - "narHash": "sha256-gf2AmWVTs8lEq7z/3ZAsgnZDhWIckkb+ZnAo5RzSxJg=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "a82ccc39b39b621151d6732718e3e250109076fa", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, "nt": { "inputs": { "nix-unit": "nix-unit", @@ -1593,13 +1552,12 @@ "hyprland-git": "hyprland-git", "hyprland-plugins": "hyprland-plugins", "iamb": "iamb", - "mango": "mango", "microvm": "microvm_2", "millennium": "millennium", "nix-alien": "nix-alien", "nixcats": "nixcats", "nixcord": "nixcord", - "nixpkgs": "nixpkgs_8", + "nixpkgs": "nixpkgs_9", "nixpkgs-master": "nixpkgs-master", "nixpkgs-staging": "nixpkgs-staging", "nixpkgs-unstable": "nixpkgs-unstable", @@ -1647,27 +1605,6 @@ "type": "github" } }, - "scenefx": { - "inputs": { - "nixpkgs": [ - "mango", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1750785057, - "narHash": "sha256-tGX6j4W91rcb+glXJo43sjPI9zQvPotonknG1BdihR4=", - "owner": "wlrfx", - "repo": "scenefx", - "rev": "3a6cfb12e4ba97b43326357d14f7b3e40897adfc", - "type": "github" - }, - "original": { - "owner": "wlrfx", - "repo": "scenefx", - "type": "github" - } - }, "sddm-silent": { "inputs": { "nixpkgs": [ @@ -1920,7 +1857,7 @@ "zen": { "inputs": { "home-manager": "home-manager_3", - "nixpkgs": "nixpkgs_9" + "nixpkgs": "nixpkgs_10" }, "locked": { "lastModified": 1771381854, diff --git a/flake.nix b/flake.nix index c6b0682..2cbefbf 100644 --- a/flake.nix +++ b/flake.nix @@ -37,21 +37,14 @@ # wm/de/apps/theming flakes hyprland-git = { - # pinned rev because color management is broken on hyprland url = "github:hyprwm/Hyprland/25250527793eb04bb60f103abe7f06370b9f6e1c"; #url = "github:hyprwm/Hyprland"; - inputs.nixpkgs.follows = "nixpkgs-unstable"; }; hyprland-plugins = { url = "github:hyprwm/hyprland-plugins"; inputs.hyprland.follows = "hyprland-git"; }; - mango = { - url = "github:DreamMaoMao/mangowc"; - inputs.nixpkgs.follows = "nixpkgs-unstable"; - }; - nixcats.url = "github:BirdeeHub/nixCats-nvim"; awww.url = "git+https://codeberg.org/LGFae/awww"; zen.url = "github:0xc000022070/zen-browser-flake"; diff --git a/homes/aurora/default.nix b/homes/aurora/default.nix index b560f1a..abae254 100644 --- a/homes/aurora/default.nix +++ b/homes/aurora/default.nix @@ -1,7 +1,6 @@ # aurora's configgg!! :333 # trans <3 { - config, inputs, upkgs, root, @@ -27,7 +26,6 @@ ../modules/shell/fastfetch/fastfetch.nix ../modules/wm/hyprland/hyprland.nix - ../modules/wm/mango/default.nix ../modules/wm/river.nix ../modules/wm/sway.nix @@ -269,24 +267,27 @@ ]; }; - foot = { + kitty = { enable = true; + package = upkgs.kitty; + + font = { + name = "DepartureMono Nerd Font Mono"; + size = 10; + }; settings = { - main = { - font = "DepartureMono Nerd Font Mono:size=10"; - include = "/home/${config.home.username}/.config/foot/theme.ini"; - }; - scrollback = { - lines = 131072; - }; - bell = { - system = "no"; - urgent = "no"; - notify = "no"; - visual = "no"; - }; + scrollback_lines = 16384; + enable_audio_bell = false; + update_check_interval = 0; + allow_remote_control = "yes"; # used for scripts to control kitty + + confirm_os_window_close = 0; # disable close window prompt }; + + extraConfig = '' + include ~/.config/kitty/theme.conf + ''; }; zen-browser = { diff --git a/homes/modules/programs/iamb/config.toml b/homes/modules/programs/iamb/config.toml index 88902fd..1577437 100644 --- a/homes/modules/programs/iamb/config.toml +++ b/homes/modules/programs/iamb/config.toml @@ -7,4 +7,4 @@ enabled = true show_message = false [image_preview] -protocol.type = "sixel" +protocol.type = "kitty" diff --git a/homes/modules/programs/yazi/yazi.nix b/homes/modules/programs/yazi/yazi.nix index fc3e7a6..9943358 100644 --- a/homes/modules/programs/yazi/yazi.nix +++ b/homes/modules/programs/yazi/yazi.nix @@ -170,7 +170,7 @@ [filechooser] cmd=${upkgs.xdg-desktop-portal-termfilechooser}/share/xdg-desktop-portal-termfilechooser/yazi-wrapper.sh default_dir=$HOME - env=TERMCMD='foot --title filechooser' + env=TERMCMD='kitty --title filechooser' open_mode=suggested save_mode=last ''; diff --git a/homes/modules/scripts/task-manager.sh b/homes/modules/scripts/task-manager.sh index ceb4ac2..068eb79 100755 --- a/homes/modules/scripts/task-manager.sh +++ b/homes/modules/scripts/task-manager.sh @@ -1,2 +1,2 @@ #!/usr/bin/env bash -pkill -f "foot --title btop -e btop" || { foot --title btop -e btop & disown; } +pkill -f "kitty --title btop -e btop" || { kitty --title btop -e btop & disown; } diff --git a/homes/modules/shell/zsh.nix b/homes/modules/shell/zsh.nix index a004edb..d1c9849 100644 --- a/homes/modules/shell/zsh.nix +++ b/homes/modules/shell/zsh.nix @@ -65,6 +65,9 @@ # upgrades the system upgrade = "cdns && nix flake update && nh os switch ./ --accept-flake-config"; + # kitty's ssh command (to fix xterm and other stuff qwq) + kssh = "kitty +kitten ssh"; + # pipes are prettyyyy!!!! :3333 pipes1 = "pipes.sh -r 1024 -p 8 -f 30"; pipes2 = "pipes.sh -r 4096 -p 16 -f 100"; diff --git a/homes/modules/themeing/wallust/templates/foot-template.ini b/homes/modules/themeing/wallust/templates/foot-template.ini deleted file mode 100644 index a8093e2..0000000 --- a/homes/modules/themeing/wallust/templates/foot-template.ini +++ /dev/null @@ -1,24 +0,0 @@ -[colors] -alpha=1.000000 -alpha-mode=default -background={{ background | strip }} -foreground={{ foreground | strip }} -selection-background={{ foreground | strip }} -selection-foreground={{ background | strip }} -regular0={{ color0 | strip }} -regular1={{ color1 | strip }} -regular2={{ color2 | strip }} -regular3={{ color3 | strip }} -regular4={{ color4 | strip }} -regular5={{ color5 | strip }} -regular6={{ color6 | strip }} -regular7={{ color7 | strip }} -bright0={{ color8 | strip }} -bright1={{ color9 | strip }} -bright2={{ color10 | strip }} -bright3={{ color11 | strip }} -bright4={{ color12 | strip }} -bright5={{ color13 | strip }} -bright6={{ color14 | strip }} -bright7={{ color15 | strip }} -urls={{ color13 | strip }} diff --git a/homes/modules/themeing/wallust/templates/mango-template.conf b/homes/modules/themeing/wallust/templates/mango-template.conf deleted file mode 100644 index 508f2c0..0000000 --- a/homes/modules/themeing/wallust/templates/mango-template.conf +++ /dev/null @@ -1,11 +0,0 @@ -# background color of the root window -rootcolor=0x{ color12 | strip }ff - -# inactive window border -bordercolor=0x{ color14 | strip }ff - -# active window border -focuscolor=0x{ color0 | strip }ff - -# urgent / alerted window border -urgentcolor=0x{ color10 | strip }ff diff --git a/homes/modules/themeing/wallust/wallust.toml b/homes/modules/themeing/wallust/wallust.toml index 39c0d57..ff82190 100644 --- a/homes/modules/themeing/wallust/wallust.toml +++ b/homes/modules/themeing/wallust/wallust.toml @@ -13,15 +13,12 @@ equibop.target = "~/.config/equibop/themes/base16-colors.css" equicord.template = "discord-template.css" equicord.target = "~/.config/Equicord/themes/base16-colors.css" +kitty.template = "kitty-template.conf" +kitty.target = "~/.config/kitty/theme.conf" + hyprland.template = "hyprland-template.conf" hyprland.target = "~/.config/hypr/colors.conf" -mango.template = "mango-template.conf" -mango.target = "~/.config/mango/colors.conf" - -foot.template = "foot-template.ini" -foot.target = "~/.config/foot/theme.ini" - waybar.template = "waybar-template.css" waybar.target = "~/.config/waybar/colors.css" diff --git a/homes/modules/wm/hyprland/hypr/windowrules.conf b/homes/modules/wm/hyprland/hypr/windowrules.conf index 0d93e18..1d2c078 100644 --- a/homes/modules/wm/hyprland/hypr/windowrules.conf +++ b/homes/modules/wm/hyprland/hypr/windowrules.conf @@ -4,7 +4,7 @@ # task manager windowrule { name = task-manager - match:class = ^(foot)$ + match:class = ^(kitty)$ match:title = ^(btop)$ float = true center = true @@ -15,7 +15,7 @@ windowrule { # terminal filechooser windowrule { name = terminal-filechooser - match:class = ^(foot)$ + match:class = ^(kitty)$ match:title = ^(filechooser)$ float = true center = true @@ -26,7 +26,7 @@ windowrule { # yazi explorer #windowrule { #name = yazi - #match:class = ^(foot)$ + #match:class = ^(kitty)$ #match:title = ^(yazi)$ #float = true #center = true @@ -34,10 +34,10 @@ windowrule { #} # ---------------------------------------------------------------------------- # -# foot - blur +# kitty - blur windowrule { - name = foot-blur - match:class = ^(foot)$ + name = kitty-blur + match:class = ^(kitty)$ match:fullscreen = false opacity = 0.95 } diff --git a/homes/modules/wm/hyprland/hyprland.nix b/homes/modules/wm/hyprland/hyprland.nix index dce34e8..49570e5 100644 --- a/homes/modules/wm/hyprland/hyprland.nix +++ b/homes/modules/wm/hyprland/hyprland.nix @@ -23,8 +23,8 @@ "$mod" = "SUPER"; # applications - "$terminal" = "foot"; - "$explorer" = "foot -e yazi"; + "$terminal" = "kitty"; + "$explorer" = "kitty -e yazi"; "$browser" = "zen-twilight"; # menu @@ -130,13 +130,6 @@ "alt, tab, exec, pkill -x rofi || rofi -modi window -show window -show-icons" "$mod, v, exec, pkill -x rofi || cliphist list | rofi -dmenu | cliphist decode | wl-copy" - # manage windows / session - "$mod+alt, c, killactive" - "$mod, f, fullscreen" - "$mod, x, togglefloating" - "$mod, i, togglesplit" - "$mod+Alt, Delete, exit" # exit hyprland - # screenshots # todo: add active monitor "$mod, s, exec, grim -g \"\$(slurp -d)\" - | wl-copy" # region @@ -159,6 +152,13 @@ "Shift_R, XF86AudioPlay, exec, playerctl shuffle toggle" "Shift_R, XF86AudioNext, exec, playerctl loop track" + # manage windows / session + "$mod+alt, c, killactive" + "$mod, f, fullscreen" + "$mod, x, togglefloating" + "$mod, i, togglesplit" + "$mod+Alt, Delete, exit" # exit hyprland + # move focus "$mod, h, movefocus, l" "$mod, j, movefocus, d" diff --git a/homes/modules/wm/mango/default.nix b/homes/modules/wm/mango/default.nix deleted file mode 100644 index 6f55063..0000000 --- a/homes/modules/wm/mango/default.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ inputs, ... }: -{ - imports = [ - inputs.mango.hmModules.mango - ]; - - wayland.windowManager.mango = { - enable = true; - }; - - xdg.configFile."mango" = { - recursive = true; - source = ./mango; - }; -} diff --git a/homes/modules/wm/mango/mango/config.conf b/homes/modules/wm/mango/mango/config.conf deleted file mode 100644 index 8c9e7ad..0000000 --- a/homes/modules/wm/mango/mango/config.conf +++ /dev/null @@ -1,103 +0,0 @@ -################################################################################ -##### Monitors ///////////////////////////////////////////////////////////////// -################################################################################ - -# note: display stream compression pending for open source -# amd gpu driver and my monitor (VG279QM) only supports DP 1.2 -# so no >240hz atm - -# main monitor -monitorrule = name:DP-2,width:1920,height:1080,refresh:240,x:0,y:0 -# second monitor -monitorrule = name:DP-3,width:1920,height:1080,refresh:144,x:1920,y:0 -# third monitor (drawing tablet) -monitorrule = name:HDMI-A-2,width:2560,height:1440,refresh:60,x:3840,y:0 -# tv -monitorrule = name:HDMI-A-1,width:1920,height:1080,refresh:60,x:-1920,y:0 - -################################################################################ -##### Startup ////////////////////////////////////////////////////////////////// -################################################################################ - -exec-once = waybar -exec-once = awww-daemon - -exec-once = wl-paste --type text --watch cliphist store -exec-once = wl-paste --type image --watch cliphist store -exec-once = wl-clip-persist --clipboard regular - -exec-once = playerctld daemon - -################################################################################ -##### Themeing ///////////////////////////////////////////////////////////////// -################################################################################ - -borderpx = 2 -gappih = 5 # inner gap horizontal -gappiv = 5 # inner gap vertical -gappoh = 10 # outer gap horizontal -gappov = 10 # outer gap horizontal -border_radius = 8 - -focused_opacity = 1.0 -unfocused_opacity = 1.0 - -cursor_size = 24 -cursor_theme = "Bunny (Icy) and Strawberries" - -################################################################################ -##### Input //////////////////////////////////////////////////////////////////// -################################################################################ - -# keyboard stuff -repeat_rate = 50 -repeat_delay = 300 - -# mouse stuff -accel_profile = 0 - -################################################################################ -##### Keybinds ///////////////////////////////////////////////////////////////// -################################################################################ - -# applications -bind = SUPER, t, spawn, foot -bind = SUPER, e, spawn, foot -e yazi -bind = SUPER, r, spawn, zen-twilight - -# rofi -bind = SUPER, d, spawn_shell, pkill -x rofi || rofi -show drun -show-icons -bind = SUPER, v, spawn_shell, pkill -x rofi || cliphist list | rofi -dmenu | cliphist decode | wl-copy -bind = ALT, TAB, spawn_shell, pkill -x rofi || rofi -modi window -show window -show-icons - -# manage windows / session -bind = SUPER+ALT, c, killclient -bind = SUPER, f, togglefullscreen -bind = SUPER+ALT, f, togglefakefullscreen -bind = SUPER, x, togglefloating - -# screenshots -# grim - | wl-copy -bind = SUPER, s, spawn, grim -g \"\$(slurp -d)\" - | wl-copy -bind = SUPER+ALT, s, spawn, grim -g \"\$(slurp -o)\" - | wl-copy -bind = SUPER+CTRL, s, spawn, grim - | wl-copy - -################################################################################ -##### Miscellaneous //////////////////////////////////////////////////////////// -################################################################################ - -# focus follows mouse cursor -sloppyfocus = 1 - -# automatically focus windows when they request activiation -focus_on_activate = 1 - -# scroll speed -axis_scroll_factor = 1.0 - -################################################################################ -##### Imports ////////////////////////////////////////////////////////////////// -################################################################################ - -# colors generated from palette generator -source = ./colors.conf diff --git a/homes/modules/wm/mango/mango/windowrules.conf b/homes/modules/wm/mango/mango/windowrules.conf deleted file mode 100644 index 40bd58b..0000000 --- a/homes/modules/wm/mango/mango/windowrules.conf +++ /dev/null @@ -1,3 +0,0 @@ -# ---------------------------------------------------------------------------- # -# foot - blur -windowrule = appid:^(foot)$, focused_opacity:0.95, unfocused_opacity:0.95 diff --git a/homes/modules/wm/river.nix b/homes/modules/wm/river.nix index 59f8a4c..3fac1a0 100644 --- a/homes/modules/wm/river.nix +++ b/homes/modules/wm/river.nix @@ -10,7 +10,7 @@ main = "Super"; # applications - terminal = "foot"; + terminal = "kitty"; browser = "firefox"; in { default-layout = "${layout}"; diff --git a/homes/modules/wm/sway.nix b/homes/modules/wm/sway.nix index 53d9741..36db54e 100644 --- a/homes/modules/wm/sway.nix +++ b/homes/modules/wm/sway.nix @@ -3,7 +3,7 @@ enable = true; config = rec { modifier = "Mod4"; # Mod4 = Super/Meta - terminal = "foot"; + terminal = "kitty"; # disable sway bar bars = []; diff --git a/hosts/nixarawrui/default.nix b/hosts/nixarawrui/default.nix index 05d6c38..b07dbb5 100644 --- a/hosts/nixarawrui/default.nix +++ b/hosts/nixarawrui/default.nix @@ -236,10 +236,6 @@ portalPackage = upkgs.hyprland-git.xdg-desktop-portal-hyprland; }; - mango = { - enable = true; - }; - river-classic = { package = spkgs.river-classic; # FIX: using spkgs version as zls is broken rn ;-; enable = true; diff --git a/snow.nix b/snow.nix index 18ca261..c927050 100644 --- a/snow.nix +++ b/snow.nix @@ -24,7 +24,6 @@ cerulean.mkNexus ./. (self: { modules = with inputs; [ sddm-silent.nixosModules.default - inputs.mango.nixosModules.mango ]; };