Skip to content

Instantly share code, notes, and snippets.

@countoren
Created April 2, 2019 03:00
Show Gist options
  • Save countoren/a8fce86c7bcb67e1c2aab9b21366b4cb to your computer and use it in GitHub Desktop.
Save countoren/a8fce86c7bcb67e1c2aab9b21366b4cb to your computer and use it in GitHub Desktop.
shell nix java
with import <nixpkgs> {};
let
ps1902 = import ./nixpkgs.nix;
jiraSDK = ps1902.callPackage (import ./jiraSDK.nix) {};
nixpkgsUtils = fetchFromGitHub {
owner="countoren";
repo="nixpkgs";
rev="0c0d4c67f335a4a288e2a43197c35780af9ed0e7";
sha256="168dn0c09322djsshcjly14q11i20knsnaxn9jw61rhkd3k1zqzf";
};
redhatJava = vscode-utils.buildVscodeMarketplaceExtension {
mktplcRef = {
name = "java";
publisher = "redhat";
version = "0.38.0";
sha256 = "1dhprs62vg4r75yv67ad2c78plqhnlsah1d0cavrdr4vcjkvcqw9";
};
fixupPhase = ''
chmod 777 $out/share/vscode/extensions/redhat.java/server
'';
};
vscode = callPackage(import "${nixpkgsUtils}/vscode") {} {
settingsFile = ./vscode/settings.json;
vscodeExtensions = [ redhatJava ];
vscodeMatketExtensions = [
{
name = "vim";
publisher = "vscodevim";
version = "1.0.8";
sha256 = "0yqfn8b2jfrijzf731sggyvik2immlx9hfgmsgp1mx01hpyisd9r";
}
{
name = "vscode-java-debug";
publisher = "vscjava";
version = "0.16.0";
sha256 = "0mgkwkcw31lk6arvs7az9jak9vs6mwdz9vkw9f2rdj0fck4mlryz";
}
{
name = "vscode-maven";
publisher = "vscjava";
version = "0.14.2";
sha256 = "1xsszmcblrij7mhairwj3bwjfk91jd6n0c6f801w79vlapanxyd9";
}
{
name = "vscode-java-dependency";
publisher = "vscjava";
version = "0.3.0";
sha256 = "0yq92fsf4apaam718bz29d4bwqy87nxwjvhvdv6jzg0sf2li6rvg";
}
{
name = "gitlens";
publisher = "eamodio";
version = "9.5.1";
sha256 = "10s2g98wv8i0w6fr0pr5xyi8zmh229zn30jn1gg3m5szpaqi1v92";
}
];
};
in
stdenv.mkDerivation rec {
name = "tm-jira-tools";
buildInputs = [
figlet
jiraSDK
ps1902.jdk8
ps1902.yarn
#ps1902.atlassian-jira
]
++ vscode.buildInputs;
shellHook = ''
figlet "TM Jira Tools"
echo '====================================='
echo 'TODO: figure out how not to use sudo'
echo 'Related StackOverflow: https://stackoverflow.com/questions/54848410/setting-up-java-dev-env-vscode-with-redhat-java'
echo '====================================='
echo 'JDK8: ${ps1902.jdk8}'
echo 'Jira SDK: ${jiraSDK}'
echo '====================================='
echo 'Clean: sudo atlas-clean'
echo 'Build IDE Dependencies: sudo atlas-mvn eclipse:eclipse'
echo 'Run: sudo atlas-run'
echo 'Editor: sudo vscode .'
''
+ vscode.shellHook;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment