Skip to content

Commit

Permalink
Add comms-vm
Browse files Browse the repository at this point in the history
Signed-off-by: shamma-alblooshi1 <[email protected]>
  • Loading branch information
shamma-alblooshi1 authored and brianmcgillion committed Aug 29, 2024
1 parent b7fe4a3 commit 73ae009
Show file tree
Hide file tree
Showing 8 changed files with 27 additions and 13 deletions.
2 changes: 1 addition & 1 deletion modules/common/networking/hosts.nix
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ let
}
{
ip = 103;
name = "element-vm";
name = "comms-vm";
}
{
ip = 104;
Expand Down
8 changes: 7 additions & 1 deletion modules/common/services/desktop.nix
Original file line number Diff line number Diff line change
Expand Up @@ -102,10 +102,16 @@ in

{
name = "Element";
path = "${pkgs.givc-cli}/bin/givc-cli ${cliArgs} start element";
path = "${pkgs.givc-cli}/bin/givc-cli ${cliArgs} start --vm comms-vm element";
icon = "${pkgs.icon-pack}/element-desktop.svg";
}

{
name = "Slack";
path = "${pkgs.givc-cli}/bin/givc-cli ${cliArgs} start --vm comms-vm slack";
icon = "${pkgs.icon-pack}/slack.svg";
}

{
name = "AppFlowy";
path = "${pkgs.givc-cli}/bin/givc-cli ${cliArgs} start appflowy";
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,10 @@ let
false;
in
{
name = "element";
name = "comms";

packages = [
pkgs.chromium
pkgs.element-desktop
pkgs.element-gps
pkgs.gpsd
Expand Down Expand Up @@ -101,8 +102,12 @@ in

ghaf.givc.appvm = {
enable = true;
name = lib.mkForce "element-vm";
applications = lib.mkForce ''{"element": "${config.ghaf.givc.appPrefix}/run-waypipe ${config.ghaf.givc.appPrefix}/element-desktop --enable-features=UseOzonePlatform --ozone-platform=wayland"}'';
name = lib.mkForce "comms-vm";
applications = lib.mkForce ''
{
"element": "${config.ghaf.givc.appPrefix}/run-waypipe ${config.ghaf.givc.appPrefix}/element-desktop --enable-features=UseOzonePlatform --ozone-platform=wayland",
"slack": "${config.ghaf.givc.appPrefix}/run-waypipe ${config.ghaf.givc.appPrefix}/chromium --enable-features=UseOzonePlatform --ozone-platform=wayland --app=https://app.slack.com/client ${config.ghaf.givc.idsExtraArgs}"
}'';
};
}
];
Expand Down
8 changes: 6 additions & 2 deletions modules/reference/appvms/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,11 @@ in
chromium-vm = lib.mkEnableOption "Enable the Chromium appvm";
gala-vm = lib.mkEnableOption "Enable the Gala appvm";
zathura-vm = lib.mkEnableOption "Enable the Zathura appvm";
element-vm = lib.mkEnableOption "Enable the Element appvm";
comms-vm = lib.mkEnableOption ''
Enable the communications appvm
- Element
- Slack
'';
appflowy-vm = lib.mkEnableOption "Enable the Appflowy appvm";
business-vm = lib.mkEnableOption "Enable the Business appvm";
enabled-app-vms = lib.mkOption {
Expand All @@ -35,7 +39,7 @@ in
(lib.optionals cfg.chromium-vm [ (import ./chromium.nix { inherit pkgs lib config; }) ])
++ (lib.optionals cfg.gala-vm [ (import ./gala.nix { inherit pkgs lib config; }) ])
++ (lib.optionals cfg.zathura-vm [ (import ./zathura.nix { inherit pkgs lib config; }) ])
++ (lib.optionals cfg.element-vm [ (import ./element.nix { inherit pkgs lib config; }) ])
++ (lib.optionals cfg.comms-vm [ (import ./comms.nix { inherit pkgs lib config; }) ])
++ (lib.optionals cfg.appflowy-vm [ (import ./appflowy.nix { inherit pkgs lib config; }) ])
++ (lib.optionals cfg.business-vm [ (import ./business.nix { inherit pkgs lib config; }) ]);
};
Expand Down
2 changes: 1 addition & 1 deletion modules/reference/profiles/mvp-user-trial.nix
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ in
chromium-vm = true;
gala-vm = true;
zathura-vm = true;
element-vm = true;
comms-vm = true;
appflowy-vm = true;
business-vm = true;
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,8 @@
in
"${lib.head vmNetworking.networking.nat.internalInterfaces}";

getElementVmEntry = builtins.filter (
x: x.name == "element-vm"
) config.ghaf.networking.hosts.entries;
serverIpAddr = lib.head (builtins.map (x: x.ip) getElementVmEntry);
getCommsVmEntry = builtins.filter (x: x.name == "comms-vm") config.ghaf.networking.hosts.entries;
serverIpAddr = lib.head (builtins.map (x: x.ip) getCommsVmEntry);
in
{
enable = lib.mkDefault false;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ in
# TODO: Move all these TcpPort and things like that, to the options of
# this module, away from from package itself.
# Forward incoming TCP traffic on port ${dendrite-pineconePkg.TcpPort} to internal network(element-vm)
# Forward incoming TCP traffic on port ${dendrite-pineconePkg.TcpPort} to internal network(comms-vm)
iptables -t nat -A PREROUTING -i ${cfg.externalNic} -p tcp --dport ${dendrite-pineconePkg.TcpPort} -j DNAT --to-destination ${cfg.serverIpAddr}:${dendrite-pineconePkg.TcpPort}
# Enable NAT for outgoing traffic
Expand Down
1 change: 1 addition & 0 deletions packages/icon-pack/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ let
"microsoft-365.svg"
"ms-outlook.svg"
"preferences-system-network.svg"
"slack.svg"
"system-lock-screen.svg"
"system-log-out.svg"
"system-reboot.svg"
Expand Down

0 comments on commit 73ae009

Please sign in to comment.