install slack
This commit is contained in:
82
builds/flutter.nix
Normal file
82
builds/flutter.nix
Normal file
@@ -0,0 +1,82 @@
|
|||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
with lib;
|
||||||
|
let
|
||||||
|
cfg = config.programs.flutter;
|
||||||
|
androidComposition = pkgs.androidenv.composeAndroidPackages {
|
||||||
|
toolsVersion = "26.1.1";
|
||||||
|
platformToolsVersion = "35.0.1";
|
||||||
|
buildToolsVersions = [
|
||||||
|
"30.0.3"
|
||||||
|
"33.0.1"
|
||||||
|
"34.0.0"
|
||||||
|
];
|
||||||
|
platformVersions = [
|
||||||
|
"31"
|
||||||
|
"33"
|
||||||
|
"34"
|
||||||
|
];
|
||||||
|
abiVersions = [ "x86_64" ];
|
||||||
|
includeEmulator = true;
|
||||||
|
emulatorVersion = "35.1.4";
|
||||||
|
includeSystemImages = true;
|
||||||
|
systemImageTypes = [ "google_apis_playstore" ];
|
||||||
|
includeSources = false;
|
||||||
|
extraLicenses = [
|
||||||
|
"android-googletv-license"
|
||||||
|
"android-sdk-arm-dbt-license"
|
||||||
|
"android-sdk-license"
|
||||||
|
"android-sdk-preview-license"
|
||||||
|
"google-gdk-license"
|
||||||
|
"intel-android-extra-license"
|
||||||
|
"intel-android-sysimage-license"
|
||||||
|
"mips-android-sysimage-license"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
androidSdk = androidComposition.androidsdk;
|
||||||
|
buildToolsVersion = "33.0.1";
|
||||||
|
in {
|
||||||
|
options.programs.flutter = {
|
||||||
|
enable = mkEnableOption "Flutter development environment";
|
||||||
|
addToKvmGroup = mkEnableOption "Add user to KVM group for hardware acceleration";
|
||||||
|
enableAdb = mkEnableOption "Enable ADB and add user to adbusers group";
|
||||||
|
user = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
description = "Username for Flutter development";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
flutter
|
||||||
|
androidSdk
|
||||||
|
# android-studio
|
||||||
|
jdk17
|
||||||
|
firebase-tools
|
||||||
|
];
|
||||||
|
|
||||||
|
environment.variables = {
|
||||||
|
ANDROID_SDK_ROOT = "${androidSdk}/libexec/android-sdk";
|
||||||
|
ANDROID_HOME = "${androidSdk}/libexec/android-sdk";
|
||||||
|
JAVA_HOME = "${pkgs.jdk17}";
|
||||||
|
GRADLE_OPTS = "-Dorg.gradle.project.android.aapt2FromMavenOverride=${androidSdk}/libexec/android-sdk/build-tools/34.0.0/aapt2";
|
||||||
|
};
|
||||||
|
|
||||||
|
nixpkgs.config = {
|
||||||
|
android_sdk.accept_license = true;
|
||||||
|
allowUnfree = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.shellInit = ''
|
||||||
|
export PATH=$PATH:${androidSdk}/libexec/android-sdk/platform-tools
|
||||||
|
export PATH=$PATH:${androidSdk}/libexec/android-sdk/cmdline-tools/latest/bin
|
||||||
|
export PATH=$PATH:${androidSdk}/libexec/android-sdk/emulator
|
||||||
|
export PATH="$PATH":"$HOME/.pub-cache/bin"
|
||||||
|
'';
|
||||||
|
|
||||||
|
programs.adb.enable = cfg.enableAdb;
|
||||||
|
|
||||||
|
users.users.${cfg.user}.extraGroups =
|
||||||
|
(optional cfg.addToKvmGroup "kvm") ++ (optional cfg.enableAdb "adbusers");
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
@@ -17,8 +17,8 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Importing necessary setup for Steam.
|
# Importing necessary setup for Steam & Printing & Flutter.
|
||||||
imports = [ ./builds/steam/default.nix ./home/extras/printer.nix ];
|
imports = [ ./builds/steam/default.nix ./home/extras/printer.nix ./builds/flutter.nix ];
|
||||||
|
|
||||||
# Use the systemd-boot EFI boot loader.
|
# Use the systemd-boot EFI boot loader.
|
||||||
boot.loader = {
|
boot.loader = {
|
||||||
@@ -160,9 +160,20 @@
|
|||||||
|
|
||||||
nixpkgs.config = {
|
nixpkgs.config = {
|
||||||
allowUnfree = true;
|
allowUnfree = true;
|
||||||
permittedInsecurePackages = [ "electron-25.9.0" ];
|
permittedInsecurePackages = [ "electron-32.3.3" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Virtualbox
|
||||||
|
boot.kernelParams = [ "kvm.enable_virt_at_load=0" ];
|
||||||
|
boot.kernelModules = ["kvm-amd"];
|
||||||
|
virtualisation.virtualbox.host.enable = true;
|
||||||
|
users.extraGroups.vboxusers.members = [ "user-with-access-to-virtualbox" "kv" ];
|
||||||
|
virtualisation.virtualbox.host.enableExtensionPack = true;
|
||||||
|
virtualisation.virtualbox.guest.enable = true;
|
||||||
|
virtualisation.virtualbox.guest.dragAndDrop = true;
|
||||||
|
virtualisation.virtualbox.host.enableKvm = true;
|
||||||
|
virtualisation.virtualbox.host.addNetworkInterface = false;
|
||||||
|
|
||||||
# Enable zsh for setting it as shell for users.
|
# Enable zsh for setting it as shell for users.
|
||||||
programs.zsh.enable = true;
|
programs.zsh.enable = true;
|
||||||
|
|
||||||
|
|||||||
@@ -27,6 +27,7 @@
|
|||||||
./rofi
|
./rofi
|
||||||
./signal
|
./signal
|
||||||
./skanlite
|
./skanlite
|
||||||
|
./slack
|
||||||
./spotify
|
./spotify
|
||||||
./stack
|
./stack
|
||||||
./telegram
|
./telegram
|
||||||
|
|||||||
5
home/programs/slack/default.nix
Normal file
5
home/programs/slack/default.nix
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
home.packages = with pkgs; [ slack ];
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user