Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,12 @@ internal sealed class DockerMenuCommand : AsyncCommand
{
public override async Task<int> ExecuteAsync(CommandContext context, CancellationToken cancellationToken)
{
if (!DependencyChecker.IsDockerInstalled())
{
Ui.Error(Resources.Error_DockerNotInstalled);
return ExitCodes.MissingDependency;
}

var selections = new SelectorMenuItem[]
{
new JsonCliMenuItem<DockerPs>(Resources.Menu_Docker_ListRunningContainers, $"{Emoji.Known.Scroll} ")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,16 @@
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<Company>Webmaster442</Company>
<PackageProjectUrl>https://github.com/webmaster442/DebiaNet</PackageProjectUrl>
<RepositoryUrl>https://github.com/webmaster442/DebiaNet</RepositoryUrl>
<RepositoryType>git</RepositoryType>
<PackAsTool>True</PackAsTool>
<ToolCommandName>debianet</ToolCommandName>
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
<Version>
$([System.DateTime]::UtcNow.ToString("yyyy")).$([System.DateTime]::UtcNow.ToString("MM")).$([System.DateTime]::UtcNow.ToString("dd")).0
</Version>
</PropertyGroup>

<ItemGroup>
Expand Down
File renamed without changes.
9 changes: 9 additions & 0 deletions Trash/DebiaNetApp/ExitCodes.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
namespace DebiaNetApp;

internal static class ExitCodes
{
public const int NotLinux = ushort.MaxValue;
public const int SudoUser = 1;
public const int Success = 0;
public const int MissingDependency = 2;
}
37 changes: 37 additions & 0 deletions Trash/DebiaNetApp/Infrastructure/DependencyChecker.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
using System.Diagnostics;

namespace DebiaNetApp.Infrastructure;

internal static class DependencyChecker
{
public static bool IsInstalled(string appBinary, params string[] arguments)
{
try
{
using var process = new Process();
process.StartInfo.FileName = appBinary;
for (int i = 0; i < arguments.Length; i++)
{
process.StartInfo.ArgumentList.Add(arguments[i]);
}
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardError = true;
process.StartInfo.UseShellExecute = false;
process.StartInfo.CreateNoWindow = true;

process.Start();
process.WaitForExit();
return process.ExitCode == 0;
}
catch
{
return false;
}
}

public static bool IsDockerInstalled()
=> IsInstalled("docker", "--version");

public static bool IsAptAvailable()
=> IsInstalled("apt-get", "--version");
}
8 changes: 7 additions & 1 deletion src/DebiaNetApp/Program.cs → Trash/DebiaNetApp/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,13 @@
if (Linux.IsRunningWithElevatedPriviliges())
{
Ui.Error(Resources.Error_SudoUser);
return ExitCodes.NotLinux;
return ExitCodes.SudoUser;
}

if (!DependencyChecker.IsAptAvailable())
{
Ui.Error(Resources.Error_NotAptDistro);
return ExitCodes.MissingDependency;
}

var app = new CommandApp<MainMenuCommand>();
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -186,4 +186,10 @@
<data name="Table_Header_Value" xml:space="preserve">
<value>Value</value>
</data>
<data name="Error_DockerNotInstalled" xml:space="preserve">
<value>This function of the app requires docker to be installed.</value>
</data>
<data name="Error_NotAptDistro" xml:space="preserve">
<value>Your distribution doesn't use apt as package manager. This app only supports apt based distributions</value>
</data>
</root>
File renamed without changes.
14 changes: 14 additions & 0 deletions changelog.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,18 @@
# Changelog

## 2026.06.21
- New DebiaNet app
- Removed .NET tools from base install, can be installed via the DebiaNet app

## 2026.04.04 - Version 26.04
- Based on Debian
- Added byobu to default install
- Added just to default install
- Added jq to install
- Added Infer# to install
- .NET 8.0.25
- .NET 9.0.14
- .NET 10.0.5

## 2025.12.27 - Initial release
- Initial 'beta' release for testing
43 changes: 13 additions & 30 deletions readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,37 +31,21 @@ The complete list of changes can be found here: [changelog](changelog.md)
- [DevToys](https://devtoys.app/)
- [Dive](https://github.com/wagoodman/dive)
- [docker](https://www.docker.com/)
- [FastFetch](https://github.com/fastfetch-cli/fastfetch)
- [git](https://git-scm.com/) with [git-lfs](https://git-lfs.com/)
- [htop](https://htop.dev/)
- [lazygit](https://github.com/jesseduffield/lazygit)
- [just](https://github.com/casey/just)
- [openssl](https://www.openssl.org/)
- [ripgrep](https://github.com/BurntSushi/ripgrep)
- [strace](https://strace.io/)
- [tmux](https://github.com/tmux/tmux/wiki)
- [Visual studio remote shell](https://learn.microsoft.com/en-us/visualstudio/debugger/remote-debugging?view=visualstudio)
- [wget](https://www.gnu.org/software/wget/)
- [jq](https://jqlang.org/)
- [byobu](https://www.byobu.org/)

**.NET tools from microsoft**

- [dotnet-counters](https://learn.microsoft.com/en-us/dotnet/core/diagnostics/dotnet-counters)
- [dotnet-coverage](https://learn.microsoft.com/en-us/dotnet/core/additional-tools/dotnet-coverage)
- [dotnet-ef](https://learn.microsoft.com/en-us/ef/core/cli/dotnet)
- [dotnet-gcdump](https://learn.microsoft.com/en-us/dotnet/core/diagnostics/dotnet-gcdump)
- [dotnet-monitor](https://learn.microsoft.com/en-us/dotnet/core/diagnostics/dotnet-monitor)
- [dotnet-stack](https://learn.microsoft.com/en-us/dotnet/core/diagnostics/dotnet-stack)
- [dotnet-symbol](https://learn.microsoft.com/en-us/dotnet/core/diagnostics/dotnet-symbol)
- [dotnet-trace](https://learn.microsoft.com/en-us/dotnet/core/diagnostics/dotnet-trace)
- [powershell](https://learn.microsoft.com/en-us/powershell/scripting/install/install-powershell-on-linux)
- [sngen](https://github.com/microsoft/slngen)
- [upgrade-assistant](https://learn.microsoft.com/en-us/dotnet/core/porting/upgrade-assistant-overview)
- [DocFx](https://dotnet.github.io/docfx/index.html)

**3rd party .NET tools**
**Apps**

- [csharprepl](https://github.com/waf/CSharpRepl)
- [ilspycmd](github.com/icsharpcode/ILSpy)
- [roslynator](https://github.com/dotnet/roslynator?tab=readme-ov-file#command-line-tool)
- [Visual studio remote shell](https://learn.microsoft.com/en-us/visualstudio/debugger/remote-debugging?view=visualstudio)
- [Infer#](https://github.com/microsoft/infersharp)

## Installation

Expand All @@ -87,11 +71,10 @@ wsl --set-default-version 2

1. Install debian: `wsl --install Debian`
2. Install user: `user` with password: `pass`
3. Run install.sh: `./src/install.sh` this will do most of the installing of software
4. Run branding.sh: `sudo ./src/branding.sh` to do branding
5. Run install-app.sh: `sudo ./src/install-app.sh` to install the debianet app.
5. exit: `exit`
6. do a shutdown: `wsl --shutdown`
7. export: `wsl --export Debian --format tar.xz debiannet.wsl`
8. unregister debian: `wsl --unregister Debian`
9. reinstall debianet.wsl
3. Run commands:

```bash
cd src
./install.sh
./copy-files.sh
```
Loading