diff --git "a/20.04\346\211\213\345\206\214.md" "b/20.04\346\211\213\345\206\214.md" new file mode 100644 index 0000000..679d4ea --- /dev/null +++ "b/20.04\346\211\213\345\206\214.md" @@ -0,0 +1,704 @@ + +**安装 Ubuntu 后的 20 件事** + +![](/assets/images/posts/2020/10/ubuntu2010.png) + +最近搞挂了一块数据盘,刚好在 Ubuntu 20.10 的发行时间点,索性重装 Ubuntu。 +本文主要为备忘。切勿照搬命令。建议最小化安装。 + +------------ + +# 基础优化 + +### 1、换软件源 + +推荐清华大学的源 +> [https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/](https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/) + +个人的备份源 +> [https://raw.githubusercontent.com/eallion/dotfiles/ubuntu/sources.list](https://raw.githubusercontent.com/eallion/dotfiles/ubuntu/sources.list) + +``` +sudo mv /etc/apt/sources.list/etc/apt/sources.list.backup +wget -c https://raw.githubusercontent.com/eallion/dotfiles/ubuntu/sources.list -O /etc/apt/sources.list +``` + +然后 update 一下: + +``` +sudo apt update +sudo apt upgrade +``` + +### 2、系统设置 + +在 `系统设置` 里按自己的习惯设置即可。 + +### 3、Sudo 免密码 + +常用的个人电脑,是可以运行 `sudo` 免输密码的,公用电脑不建议这样设置。 + +``` +su - +``` + +``` +nano /etc/sudoers +``` + +在 `root ALL=(ALL:ALL) ALL` 下一行添加: +(`eallion` 请替换成自己的用户名) + +``` +eallion ALL=(ALL:ALL) ALL +``` + +在 `% sudo ALL=(ALL:ALL) ALL` 下一行添加: +(`eallion` 请替换成自己的用户名) + +``` +eallion ALL=(ALL:ALL) NOPASSWD:ALL +``` + +### 4、安装基础软件 + +``` +sudo apt install vim \ + git \ + curl \ + gnome-tweak-tool \ + gdebi \ + preload \ + google-chrome-stable \ + gnome-shell-extensions \ + ubuntu-restricted-extras +``` + +### 5、去鼠标加速 + +对于 FPS 玩家,尤其推荐去掉鼠标加速。 +5.1. 在 `GNOME Tweaks` 点击 `键盘和鼠标` 在 `鼠标`-`加速配置` 里选择 `Flat`。 +5.2. 在 `系统设置` 里 `设备`-`鼠标和触摸板`-`鼠标`-`鼠标速度` 调节自己适应的鼠标速度。 + +### 6、安装显卡驱动 + +如果是 Nvidia 独立显卡,在 Dash 里搜索 `drive`,打开 `附加驱动`,选择专有驱动。 + +### 7、下载个人配置 + +基于 Linux 特性,备份配置文件即可。 +我的部分配置备份于 GitHub: +> [https://github.com/eallion/dotfiles](https://github.com/eallion/dotfiles) + +``` +git clone https://github.com/eallion/dotfiles.git -b ubuntu ~/Documents/dotfiles +``` + +恢复 Git Vim Tmux Fcitx 等配置。 + +### 8、安装输入法 + +个人使用 Fcitx 五笔拼音 + +#### 8.1、Fcitx 五笔拼音 + +``` +sudo apt install fcitx-table-wbpy +``` + +> 主题: [https://github.com/Yucklys/fcitx-nord-skin](https://github.com/Yucklys/fcitx-nord-skin) +> 主题: [https://github.com/Sakitami/fcitx-themes-package](https://github.com/Sakitami/fcitx-themes-package) + +配置默认输入法: + +``` +im-config +``` + +自定义标点符号: + +``` +wget -c https://raw.githubusercontent.com/eallion/dotfiles/ubuntu/.config/fcitx/data/punc.mb.zh_CN -O ~/.config/fcitx/data/punc.mb.zh_CN +``` + +按下面格式添加符号,如果不符合习惯请自行修改。 + +``` +~ ~ +` ` +! ! +@ @ +# # +$ ¥ +% ␣ +^ …… +& & +* * +( ( +) ) +_ —— +- - ++ + += = +| | +\ 、 +[ 【 +] 】 +{ 〖 +} 〗 +: : +; ; +" “ ” +' ‘ ’ +< 《 +> 》 +, , +. 。 +? ? +``` + +#### 8.2、Fcitx5 五笔拼音 + +安装: + +``` +sudo apt install fcitx5 fcitx5-chinese-addons fcitx5-frontend-gtk2 fcitx5-frontend-gtk3 fcitx5-frontend-qt5 +```` + +切换输入法: + +``` +im-config +``` + +安装 Psionics-Remix 主题(可选) +> [https://github.com/xTpx/Psionics-Remix](https://github.com/xTpx/Psionics-Remix) + +``` +git clone https://github.com/xTpx/Psionics-Remix.git ~/.local/share/fcitx5/themes/Psionics-Remix +``` + +``` +vim ~/.config/fcitx5/conf/classicui.conf +``` + +配置主题: + +``` + *** +Theme=Psionics-Remix + *** +``` + +自定义快速输入: + +``` +sudo vim /usr/share/fcitx5/data/quickphrase.d/quick.mb +``` + +在文件中添加形如 `input output` 的代码,一行一条,即可实现添加快速输入辞典。 +示例:要在快速输入中输入 `ddrr`,在候选中显示 `大大的小蜗牛`,只需在上述 mb 文件中添加一行 `ddrr 大大的小蜗牛` 即可。(注意空格) +> 友情提示:快速输入可以使用分号打开,Rime 不支持快速输入。 + +### 9、双系统时间设置 + +解决切换到 Windows 时间不对的问题。将本地时间更新到硬件上。 + +``` +sudo apt install ntpdate +sudo ntpdate ntp.aliyun.com # 阿里云的时间服务器,可用其他时间服务器替换 +sudo hwclock --localtime --systohc +``` + +**前 9 个步骤执行完成后,建议重启一下!** + +### 10、安装 Guake + +通过软件仓库直接安装的 Guake 版本不够新,而且中文显示不全。 +推荐源码安装: + +``` +git clone https://github.com/Guake/guake.git ~/Documents/guake +cd ~/Documents/guake +./scripts/bootstrap-dev-debian.sh run make +make +sudo make install +``` + +Ubuntu 20.10 默认终端的背景色:`#300a24` + +**Guake indicator** +如果有需要可安装 Guake indicator: + +``` +sudo apt install guake-indicator +``` + +### 11、安装 Oh My Tmux + +> [https://github.com/gpakosz/.tmux](https://github.com/gpakosz/.tmux) + +``` +cd +git clone https://github.com/gpakosz/.tmux.git +ln -s -f .tmux/.tmux.conf +cp .tmux/.tmux.conf.local . +``` + +### 12、安装 Oh My Zsh + +> 参考:[https://eallion.com/ubuntuzsh](https://eallion.com/ubuntuzsh "https://eallion.com/ubuntuzsh") + +安装 Zsh: + +``` +sudo apt update +sudo apt install zsh autojump fasd +``` + +安装 Oh My Zsh: +> 官方文档 [https://github.com/ohmyzsh/ohmyzsh#basic-installation](https://github.com/ohmyzsh/ohmyzsh#basic-installation) + +``` +sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" +``` + +下载、安装、配置字体: + +> 下载:[Ubuntu Nerd Font](https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/Ubuntu/Regular/complete/Ubuntu%20Nerd%20Font%20Complete.ttf) +> 下载:[Knack Nerd Font Mono](https://github.com/ryanoasis/nerd-fonts/raw/v1.2.0/patched-fonts/Hack/Regular/complete/Knack%20Regular%20Nerd%20Font%20Complete%20Mono.ttf)(推荐) + +安装主题 Powerlevel9k : + +``` +git clone https://github.com/bhilburn/powerlevel9k.git ~/.oh-my-zsh/custom/themes/powerlevel9k +``` + +安装历史命令建议插件: + +``` +git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions +``` + +安装命令行语法高亮插件: + +``` +git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting +``` + +设置 Oh My Zsh : + +``` +vim ~/.zshrc +``` + +需要修改如下几个地方: + +``` + ****** +POWERLEVEL9K_MODE='nerdfont-complete' +ZSH_THEME="powerlevel9k/powerlevel9k" +POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(context dir dir_writable disk_usage vcs newline) +POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status root_indicator background_jobs history time) + ****** +ENABLE_CORRECTION="true" + ****** +COMPLETION_WAITING_DOTS="true" + ****** +plugins=( git extract fasd zsh-autosuggestions zsh-syntax-highlighting docker docker-compose) + ****** +``` + +我个人的配置: + +``` +rm ~/.zshrc +wget -c https://raw.githubusercontent.com/eallion/dotfiles/ubuntu/.zshrc -O ~/.zshrc +``` + +让配置生效: + +``` +source ~/.zshrc +``` + +如果安装时没有选择将 Zsh 作为默认 Shell,可以用下面的命令设置: + +``` +chsh -s /bin/zsh +``` + +查看当前所用的 Shell : `echo $SHELL`。 + +### 13、配置 Vim + +#### 13.1 spf13-vim + +> [https://github.com/spf13/spf13-vim](https://github.com/spf13/spf13-vim) + +#### 13.2 EverVim(推荐) + +> [https://github.com/LER0ever/EverVim](https://github.com/LER0ever/EverVim) +> Ubuntu 配置 EverVim [https://eallion.com/ubuntuevervim/](https://eallion.com/ubuntuevervim/) + +安装 EverVim 步骤 +安装依赖: + +``` +sudo apt install -y git curl python3-pip python3-dev exuberant-ctags cmake gcc g++ build-essential +``` + +安装 EverVim : + +``` +curl -sLf https://raw.githubusercontent.com/LER0ever/EverVim/master/Boot-EverVim.sh | bash +``` + +进 Vim 安装插件: + +``` +vim +:PlugInstall +``` + +如果进 Vim 提示 Your ycmd is shut down ,需要安装 You Compute Me : + +``` +cd ~/.vim/bundle/YouCompleteMe +python3 install.py --clang-completer +``` + +### 14、配置 Grub 引导 + +Etx4 文件系统用 Grub-customizer 即可,Btrfs、ZFS 等文件系统此软件无效。 + +``` +sudo apt install grub-customizer +``` + +Theme: +> [https://github.com/sandesh236/sleek--themes](https://github.com/sandesh236/sleek--themes) +> [https://github.com/gustawho/grub2-theme-breeze](https://github.com/gustawho/grub2-theme-breeze) + +如果 Nvidia 独立显卡在引导界面开机黑屏:将 `nomodeset` 加到 `/etc/default/grub` 即可。 + +``` +GRUB_CMDLINE_LINUX_DEFAULT="nomodeset quiet splash" +``` + +### 15、自动挂载硬盘 + +查看硬盘的 UUID 和 Type : + +``` +sudo blkid +``` + +记录下 `UUID` 和 `Type`。 +创建挂载目录: + +``` +mkdir -p ~/Files ~/Media +``` + +查看自己的 uid gid: + +``` +id eallion +``` + +编辑配置文件: + +``` +sudo vim /etc/fstab +``` + +按格式添加: + +``` +UUID=xxxx /mount-folder type defaults 0 0 +``` + +如: + +``` +UUID=xxxx /home/eallion/Files ntfs defaults,uid=1000,gid=1000,umask=022 0 0 +UUID=xxxx /home/eallion/Media ntfs defaults,uid=1000,gid=1000,umask=022 0 0 +``` + +如果不加 uid gid ,自动挂载后可能是 root 权限,无法读写。 + +### 16、安装 PulseAudio Volume Control + +``` +sudo apt install pavucontrol +``` + +### 17、安装 Docker + +> [https://docs.docker.com/engine/install/ubuntu/](https://docs.docker.com/engine/install/ubuntu/) +Ubuntu 20.10 暂时还没有官方源,使用 Ubuntu 20.04 的源替代。 +即:替换 `$(lsb_release -cs)` 为 `focal`。 + +``` +sudo apt remove docker docker-engine docker.io containerd runc +sudo apt install -y apt-transport-https ca-certificates curl gnupg-agent software-properties-common +curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - +sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable" +sudo apt install -y docker-ce docker-ce-cli containerd.io +``` + +检查是否安装成功: + +``` +docker version +sudo docker run hello-world +```` + +安装 Docker Compose: + +``` +sudo curl -L "https://github.com/docker/compose/releases/download/1.27.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose +sudo chmod +x /usr/local/bin/docker-compose +sudo ln -s /usr/local/bin/docker-compose/usr/bin/docker-compose +``` + +Docker 属于高频操作,运行 Docker 时,免去 `sudo` +> [https://docs.docker.com/engine/install/linux-postinstall/](https://docs.docker.com/engine/install/linux-postinstall/) + +``` +sudo groupadd docker +sudo usermod -aG docker $USER +reboot +newgrp docker +sudo chown "$USER":"$USER" /home/"$USER"/.docker -R +sudo chmod g+rwx "$HOME/.docker" -R +``` + +### 18、安装 Gnome Shell Extensions + +#### 18.1. 安装浏览器插件 + +可以使用 Chrome 插件,如果登录了 Google 账号,有自动同步功能。 + +- Chrome : [GNOME Shell integration](https://chrome.google.com/webstore/detail/gnome-shell-integration/gphhapmejobijbbhgpjhcjognlahblep "GNOME Shell integration") +- Firefox: [https://extensions.gnome.org](https://extensions.gnome.org/ "https://extensions.gnome.org/") + +#### 18.2. 安装 Gnome Shell Extensions + +``` +sudo apt install gnome-shell-extensions +``` + +#### 18.3. 安装扩展 + +> 以下扩展插件按需启用 +> 安装完成后,按 `Alt`+`F2`,输入 `r` 重启 + +- [Applications Menu](https://extensions.gnome.org/extension/6/applications-menu/) +- [Applications Overview Tooltip](https://extensions.gnome.org/extension/1071/applications-overview-tooltip/) +- [Auto Move Windows](https://extensions.gnome.org/extension/16/auto-move-windows/) +- [Clipboard Indicator](https://extensions.gnome.org/extension/779/clipboard-indicator/) +- [Coverflow Alt-Tab](https://extensions.gnome.org/extension/97/coverflow-alt-tab/) +- [Dash to Dock](https://extensions.gnome.org/extension/307/dash-to-dock/) + - `sudo gnome-extensions disable ubuntu-dock@ubuntu.com` +- [Desktop Icons](https://extensions.gnome.org/extension/1465/desktop-icons/) +- [GSConnect](https://extensions.gnome.org/extension/1319/gsconnect/) +- [Hide Top Bar](https://extensions.gnome.org/extension/545/hide-top-bar/) +- [Horizontal workspaces](https://extensions.gnome.org/extension/2141/horizontal-workspaces/) +- [Launch new instance](https://extensions.gnome.org/extension/600/launch-new-instance/) +- [Lunar Calendar 农历](https://extensions.gnome.org/extension/675/lunar-calendar/) + - `sudo apt install gir1.2-lunar-date-2.0` +- [Native Window Placement](https://extensions.gnome.org/extension/18/native-window-placement/) +- [OpenWeather](https://extensions.gnome.org/extension/750/openweather/) +- [Places Status Indicator](https://extensions.gnome.org/extension/8/places-status-indicator/) +- [Removable Drive Menu](https://extensions.gnome.org/extension/7/removable-drive-menu/) +- [Remove Alt+Tab Delay v2](https://extensions.gnome.org/extension/2741/remove-alttab-delay-v2/) +- [Remove Dropdown Arrows](https://extensions.gnome.org/extension/800/remove-dropdown-arrows/) + - [Unite](https://extensions.gnome.org/extension/1287/unite/) 里有此功能。 +- [Screenshot Window Sizer](https://extensions.gnome.org/extension/881/screenshot-window-sizer/) +- [Sound Input & Output Device Chooser](https://extensions.gnome.org/extension/906/sound-output-device-chooser/) +- [Status Area Horizontal Spacing](https://extensions.gnome.org/extension/355/status-area-horizontal-spacing/) +- [TopIcons Plus](https://extensions.gnome.org/extension/1031/topicons/) +- [Tray Icons](https://extensions.gnome.org/extension/1503/tray-icons/) +- [Ubuntu AppIndicators](https://extensions.gnome.org/extension/1301/ubuntu-appindicators/) +- [Ubuntu Dock](https://extensions.gnome.org/extension/1300/ubuntu-dock/) +- [Unite](https://extensions.gnome.org/extension/1287/unite/) +- [User Themes](https://extensions.gnome.org/extension/19/user-themes/) +- [Vitals](https://extensions.gnome.org/extension/1460/vitals/) +- [Window List](https://extensions.gnome.org/extension/602/window-list/) +- [windowNavigator](https://extensions.gnome.org/extension/10/windownavigator/) +- [Workspace Indicator](https://extensions.gnome.org/extension/21/workspace-indicator/) + +### 19、火焰截图 Flameshot + +需要设置快捷键,所以把火焰截图单独拿出来说。 + +``` +sudo apt install flameshot +``` + +设置截图快捷键: +`系统设置` - `设备` - `键盘快捷键` - `自定义快捷键` 点加号添加一个: + +``` +名称:flameshot +命令:flameshot gui +设置快捷键:(按键盘设置) +``` + +### 20、体验 macOS Big Sur 动态壁纸 + +实际上没什么卵用,个人也不太喜欢。 +Gnome 桌面环境原生支持按时间自动切换壁纸的功能。 +无论什么 Linux 发行版,只要使用 Gnome 桌面环境都可以使用此壁纸。 +此套壁纸支持 5K 分辨率。 +Windows 可以使用 [WinDynamicDesktop](https://github.com/t1m0thyj/WinDynamicDesktop)。 +> [https://github.com/eallion/Big-Sur-Ubuntu](https://github.com/eallion/Big-Sur-Ubuntu) + +#### 20.1、下载 Big Sur + +``` +git clone https://github.com/eallion/Big-Sur-Ubuntu.git ~/Pictures/Big-Sur-Ubuntu +``` + +#### 20.2、设置 + +打开 `Gnome Tweaks` +找到 `外观`-`背景` +选择 `groovy.xml`(文件在 `/home/username/Pictures/Big-Sur-Ubuntu/groovy.xml` 路径) +选择 `Zoom` 调整方式 + +------------ + +# 安装软件 + +### 安装常用软件 + +推荐一些常用的软件: + +- Authy (Snap) + +``` +sudo snap install authy --beta +``` + +- Filezilla + +``` +sudo apt install filezilla +``` + +- PhotoGIMP (GIMP)(Snap) + +``` +sudo snap install photogimp +``` + +- Steam + +``` +sudo apt install steam +``` + +- Telegram + +``` +sudo apt install telegram-desktop +``` + +- Thunderbird + +``` +sudo apt install thunderbird thunderbird-locale-zh-cn +``` + +- Virtualbox + +``` +sudo apt install virtualbox +``` + +- VLC + +``` +sudo apt install vlc +``` + +- AppImage Launcher + +> [https://github.com/TheAssassin/AppImageLauncher/](https://github.com/TheAssassin/AppImageLauncher/) + +- Docker + +> [https://docs.docker.com/engine/install/ubuntu/](https://docs.docker.com/engine/install/ubuntu/) + +- Dropbox + +> [https://www.dropbox.com/install](https://www.dropbox.com/install) + +- Go + +> [https://golang.org/doc/install](https://golang.org/doc/install) + +- Hugo + +> [https://github.com/gohugoio/hugo/releases](https://github.com/gohugoio/hugo/releases) + +- Keybase + +> [https://keybase.io/docs/the_app/install_linux](https://keybase.io/docs/the_app/install_linux) + +- MouseWheel + +> [https://github.com/muharemovic/MouseWheel](https://github.com/muharemovic/MouseWheel) + +- Neteasy 网易云音乐 + +> [https://music.163.com/#/download](https://music.163.com/#/download) + +- Nginx Mysql PHP + +> [https://eallion.com/ubuntu2004lnmp/](https://eallion.com/ubuntu2004lnmp/) + +- NVM + +> [https://github.com/nvm-sh/nvm](https://github.com/nvm-sh/nvm) + +- OBS + +> [https://obsproject.com/wiki/install-instructions#linux](https://obsproject.com/wiki/install-instructions#linux) + +- PicGo (snap install with `--danderous`) + +> [https://github.com/Molunerfinn/PicGo](https://github.com/Molunerfinn/PicGo) + +- qBittorrent Enhanced + +> [https://github.com/c0re100/qBittorrent-Enhanced-Edition](https://github.com/c0re100/qBittorrent-Enhanced-Edition) +> [https://github.com/poplite/qBEE-Ubuntu-Packaging](https://github.com/poplite/qBEE-Ubuntu-Packaging) + +- QQ + +> [https://im.qq.com/linuxqq/index.html](https://im.qq.com/linuxqq/index.html) + +- Slack + +> [https://slack.com/downloads/linux](https://slack.com/downloads/linux) + +- Spofity + +> [https://www.spotify.com/us/download/linux/](https://www.spotify.com/us/download/linux/) + +- Termius + +> [https://termius.com/linux](https://termius.com/linux) + +- Typora + +> [https://typora.io/#linux](https://typora.io/#linux) + +- Visual Studio Code + +> 通过 Snap 仓库安装有中文输入 Bug 。 +> [https://code.visualstudio.com/Download](https://code.visualstudio.com/Download) \ No newline at end of file diff --git a/README.md b/README.md index 9bf2193..0cab126 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,8 @@ -# UbuntuAutoScript -Linux Auto Configuration Script- Linux 软件自动安装配置脚本 +# Ubuntu 配置脚本 全功能美化一键安装 +## 介绍 -废话不多说,先来一张效果图,没图片你们肯定是不会看下去的。 -简单的运行一下脚本,然后喝杯咖啡,打个游戏,做点其他事情,然后就没有然后了 +欢迎使用 Ubuntu 配置脚本 README。本文件将指导您如何使用 `setup.bash` 脚本来配置您的 Ubuntu 系统,安装各种工具和实用程序。该脚本提供了一种方便的方法来安装一系列的软件包,您可以选择进行完整安装,或者根据需要选择特定的软件包进行安装。 ![Screenshot from 2017-10-23 22-01-52.png](http://upload-images.jianshu.io/upload_images/3127217-5aba480a92e0229e.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) @@ -12,117 +11,104 @@ Linux Auto Configuration Script- Linux 软件自动安装配置脚本 ![Screenshot from 2017-10-23 22-01-35.png](http://upload-images.jianshu.io/upload_images/3127217-259258316bcc280f.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) -写这个脚本的原因是因为作者手太贱,我有一颗强烈的好奇心,但是同时又有一双︿( ̄︶ ̄)︿非常贱贱的双手,所以当作者在安装了无数个Linux发行版之后,再疲于每一次安装都需要重新安装软件,配置各种环境变量的生活, -简直苦不堪言,时间就是金钱,但是手贱喜欢换系统怎么办, -最后实在受不了了,自己写了一个自动化配置安装软件脚本 +![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/be2bd70f02034279ad6ca2dea364a2bb.png) -`用法` -``` -正确打开命令行: -git clone https://github.com/SickoOrange/UbuntuAutoScript.git -cd UbuntuAutoScript -chmod +x setup.sh -sudo ./ setup.sh -``` -> 如果你想自动配置你的github ssh 秘钥,只需要在命令上述命令后面追加 -g xxxxxxx@gmail.com即可,生成的秘钥会自动保存在桌面的github_ssh_key.txt文件中。 - -> sudo ./setup.sh -g xxxxxxx@gmail.com +## 脚本概述 +`setup.bash` 脚本旨在自动化安装和配置各种软件包。您可以通过运行脚本并按照提示进行选择,来轻松地设置开发环境、办公工具、媒体工具等。脚本支持不同的 Ubuntu 版本,并包含多个功能模块,用户可以根据需要选择安装。 - 脚本已经在Github开源,欢迎随时 - `Start` - `Fork` - `Issue` -作者精力有限,所以还有什么没有想到希望大家多提意见 +## 使用说明 -> Github: -> https://github.com/SickoOrange/UbuntuAutoScript +### 前提条件 +在运行脚本之前,请确保您的系统满足以下条件: +1. 运行 Ubuntu 操作系统(支持 14.04、16.04、18.04、20.04、22.04 版本)。 +2. 您具有 sudo 权限。 +3. 系统已连接到互联网。 -### 这个Bash Script都帮我们干了啥? +### 下载和运行脚本 -这里简单列举一下这个Bash Script的功能: +1. 打开终端。 +2. 下载脚本文件: + ```bash + git clone https://github.com/lovelyyoshino/UbuntuAutoScript.git + ``` +3. 赋予脚本执行权限: + ```bash + cd UbuntuAutoScript + chmod +x setup.bash + ``` +4. 运行脚本: + ```bash + ./setup.bash + ``` -1. 更新系统的软件源 -2. 针对Ubuntu16.04: -`楼主轻微桌面颜控,所以简单美观的桌面优化是必不可少的了` - - 自动下载安装Gnome桌面 - - 自动下载安装 Dash To Dock插件 (就是类似苹果的软件栏) - - 自动下载安装 ARC 风格主题 - - 自动下载安装 Flat Remix 扁平化图标 -3. 自动配置 Node Js 以及 npm, 开箱即用 -4. 自动下载配置 Oracle JDK,版本 1.8.0_151, 同时自动配置环境变量 - 打开Terminal - 输入 java -version 验证是否正确安装 -5. 自动安装Gradle 版本构建工具 -6. 自动安装sdkman 用于管理多个软件开发套件的并行版本的工具 -7. 自动安装Typora Linux版本的Markdown写作神器 -8. 安装常用小工具: -``` - Git -- 版本控制软件 - Curl -- 调试网络连接的小工具 - Gdebi -- 有些deb软件不能通过默认安装器安装的, 可以试试他 - Vim -- 不说了撸代码神器 - Unzip -- linux解压zip压缩文件 - unrar -- 解压rar - jd -- 命令行解析json工具 - kolourpaint4 --画图工具 -``` -9. 自动下载安装常用的软件: -``` - Visual Studio Code - Genymotion - Skype - Android Studio - IntellijIDEA - ``` +### 使用脚本 +运行脚本后,您将看到如下提示: -#### 最后,时间仓促,目前就想到这么多,以后有什么需要的工具还会继续更新,如果大家有什么想法或者意见可以给我留言, 或者直接在Github上fork. - -``` - 23.10.2017 更新日志 - 1. 添加了网易云音乐 - 2. 添加搜狗输入法 - ps: 搜狗输入法已经安装完毕,但是脚本只是帮你安装到系统了,你需要自己把搜狗输入法添加到fcitx中,如下图 ``` -> ![Screenshot from 2017-10-23 21-56-55.png](http://upload-images.jianshu.io/upload_images/3127217-3430d3da55a7fdfb.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) - +请按回车键以全部安装,或者输入您想安装的功能编号(用空格分隔,例如:1 3 8): ``` -25.10.2017 更新日志 -1. 添加了 linux 命令行 Json解析工具 jd -2. 添加了 画图板 kolour paint -3. 修复了window与ubuntu双系统,时间不同步的错误 -4. 增加了自动配置github ssh -5. 添加解压rar工具 -``` - -``` -26.10.2017 更新日志 -1. 添加了SDKMAN!是一个用于管理多个软件开发套件的并行版本的工具 -2. 自动安装Gradle版本构建工具 -``` - -``` -29.10.2017 更新日志 -1.自动安装 maven -2.自动安装 docker - 2.1 mysql image - 2.2 tomcat image - 2.3 nginx image -``` - -``` -30.10.2017 更新日志 -1.自动安装 sqliteman linux下一款轻量级数据库图形化软件 -2. clementine linux下一款受欢迎的开源音乐播放软件 -``` - - -> 背景图片地址 -> http://i.imgur.com/nZLDzzk.jpg -> Github地址: -> https://github.com/SickoOrange/UbuntuAutoScript \ No newline at end of file +您有两种选择: +1. **直接按回车键**:脚本将自动安装所有功能。 +2. **输入数字选项**:根据您的需要选择要安装的功能模块,数字之间用空格分隔。例如,输入 `1 3 8` 表示安装功能 1、3 和 8。 + +### 可选安装功能列表 + +以下是脚本中可选的安装功能及其对应的数字编号: + +1. **系统更新** +2. **基础工具(如 git、vim、curl、tree、htop、fish、字体等)** +3. **Docker** +4. **Terminator 终端** +5. **搜狗输入法** +6. **系统监视器** +7. **GIMP 图像处理** +8. **VS Code** +9. **Sublime Text** +10. **Flameshot 截图** +11. **Retext Markdown 编辑器** +12. **mplayer/smplayer 视频播放器** +13. **Chrome 浏览器** +14. **Meld 文件比较** +15. **Kazam 屏幕录像** +16. **Figlet 命令行艺术字体** +17. **WhiteSur 主题美化** +18. **Clash/Clash Nyanpasu 代理工具** +19. **CLion C/C++ IDE** +20. **Miniconda** +21. **Termius SSH 客户端** +22. **systemback 系统备份** +23. **CompizConfig 窗口增强** +24. **Sticky Notes 便签** +25. **Peek 动图截图** +26. **Drawio 流程图编辑器** +27. **PyCharm Python IDE** +28. **Kdenlive 视频剪辑** +29. **Cursor AI IDE(需手动下载 AppImage 后运行本脚本)** +30. **ROS 机器人操作系统(FishROS 脚本)** +31. **Neofetch 系统信息展示** +32. **Tailscale 内网穿透** +33. **zsh + oh-my-zsh + 常用 alias** +34. **Variety 动态壁纸** + + +### 示例 + +1. **安装所有功能**: + 运行脚本并直接按回车键。 + + ```bash + ./setup.bash + ``` + +2. **选择性安装功能**: + 运行脚本并输入数字选项,例如只安装更新系统、Docker 和 VS Code: + + ```bash + ./setup.bash 1 3 8 + ``` diff --git a/githelp.sh b/githelp.sh deleted file mode 100755 index 2ebc33a..0000000 --- a/githelp.sh +++ /dev/null @@ -1,6 +0,0 @@ -#! /bin/bash -echo "ready push" -echo $1 -git add --all -git commit -m "$1" -git push origin master \ No newline at end of file diff --git a/jetbra-2024/.DS_Store b/jetbra-2024/.DS_Store new file mode 100644 index 0000000..228be86 Binary files /dev/null and b/jetbra-2024/.DS_Store differ diff --git a/jetbra-2024/config-jetbrains/dns.conf b/jetbra-2024/config-jetbrains/dns.conf new file mode 100644 index 0000000..090e4e0 --- /dev/null +++ b/jetbra-2024/config-jetbrains/dns.conf @@ -0,0 +1,3 @@ +[DNS] +EQUAL,jetbrains.com +EQUAL,plugin.obroom.com \ No newline at end of file diff --git a/jetbra-2024/config-jetbrains/power.conf b/jetbra-2024/config-jetbrains/power.conf new file mode 100644 index 0000000..e471de2 --- /dev/null +++ b/jetbra-2024/config-jetbrains/power.conf @@ -0,0 +1,7 @@ +[Result] +; Suit 230914 +EQUAL,75888623192465772084955377951198306702135327313062315225563718470653661793801719178647553532410237467495550800187973529202133466238825354135988657390766050197160093050945611087414688022502220060564716139142356429494315004946432334067127515081383336664162877126600357077796107641437507844835265792365885264118815924123978949395829736969354441202826225673948313261585644898954777409621857150971668073862687253868141869122469331021430401371289707681211947592819675200121184556360932201089199282211738120006888533563163642302207579745484728384486428222208213812291528007428530070242454238203928550683105421062331094750845145505608972009635176965215115688208740845303355991059521804735078574469432870400787428253602342729300042328170420659062588195293985517003844343989763104027328569042852690996233875190439074960872926324787157115483523118473430609411096400697894536993294915535905449630056538884982426205451557516203033628658808550799424730131437543420952769712793044255279152357141856290356977839447381244929084411487482957782888343837193520146442780899122074573307925429597225835206724304378622338028349953089952976438255759582568115277066791679931555627913314296216846420738487344812850701846117667234235837952975099539950423673283,65537,860106576952879101192782278876319243486072481962999610484027161162448933268423045647258145695082284265933019120714643752088997312766689988016808929265129401027490891810902278465065056686129972085119605237470899952751915070244375173428976413406363879128531449407795115913715863867259163957682164040613505040314747660800424242248055421184038777878268502955477482203711835548014501087778959157112423823275878824729132393281517778742463067583320091009916141454657614089600126948087954465055321987012989937065785013284988096504657892738536613208311013047138019418152103262155848541574327484510025594166239784429845180875774012229784878903603491426732347994359380330103328705981064044872334790365894924494923595382470094461546336020961505275530597716457288511366082299255537762891238136381924520749228412559219346777184174219999640906007205260040707839706131662149325151230558316068068139406816080119906833578907759960298749494098180107991752250725928647349597506532778539709852254478061194098069801549845163358315116260915270480057699929968468068015735162890213859113563672040630687357054902747438421559817252127187138838514773245413540030800888215961904267348727206110582505606182944023582459006406137831940959195566364811905585377246353->31872219281407242025505148642475109331663948030010491344733687844358944945421064967310388547820970408352359213697487269225694990179009814674781374751323403257628081559561462351695605167675284372388551941279783515209238245831229026662363729380633136520288327292047232179909791526492877475417113579821717193807584807644097527647305469671333646868883650312280989663788656507661713409911267085806708237966730821529702498972114194166091819277582149433578383639532136271637219758962252614390071122773223025154710411681628917523557526099053858210363406122853294409830276270946292893988830514538950951686480580886602618927728470029090747400687617046511462665469446846624685614084264191213318074804549715573780408305977947238915527798680393538207482620648181504876534152430149355791756374642327623133843473947861771150672096834149014464956451480803326284417202116346454345929350148770746553056995922154382822307758515805142704373984019252210715650875853634697920708113806880196144197384637328982263167395073688501517286678083973976140696077590122053014085412828620051470085033364773099146103525313018873319293728800442101520384088109603555959893639842091339193857485407672132882577840295039058621747654642202620767068924079813640067442975 +EQUAL,18334983902317920056407822076363704637127511531538667546454397384237002307773468304678083268940125026889850144873377524086979381177447338726740515125485990255804943597229646061638739889766127330669573122850717958841899404955081920145521154771305144425440057732333493057842144190570008851861105129783440041663779514287133102203234622617071230933765542056696346242481464904964506696247983144941959930402082784396824311315073713284265519582655262360264508170809532574071410971740082846089152772578790836229920359729093453981067609164052947062747210374015835086399513848397669153177129004699260465730470356144424062305576,65537,24156627931985958051017183040835577271803742470193804806479316178045088981962804168393398987646446251087541768081971475544151551235525470790716604369379805327668466429966167642117961353233058515180243264560201783520956161510523416923017697354365782825500659342029196527776056976223174394946371372849906309277537461992299774200098515526818746947230488275456663264920440977381968978227273889068919338259949793686590492904029279861913225794809675826299753284990778166519152326723946780528965868736869495336993456735232755342913885746267768375682771655854436236934171901662660193080235109535758464079136573948168636773471->986236757547332986472011617696226561292849812918563355472727826767720188564083584387121625107510786855734801053524719833194566624465665316622563244215340671405971599343902468620306327831715457360719532421388780770165778156818229863337344187575566725786793391480600129482653072861971002459947277805295727097226389568776499707662505334062639449916265137796823793276300221537201727072401742985542559596685092673521228140822200236743113743661549252453726123450722876929538747702356573783116366629850199080495560991841329893037291900147497007197055572787780928474439121996761454121550126010635197320122603857735547407 + +[Args] +EQUAL,65537,24773058818499217187577663886010908531303294206336895556072197892590450942803807164562754911175164262596715237551312004078542654996496301487027034803410086499747369353221485073240039340641397198525027728751956658900801359887190562885573922317930300068615009483578963467556425525328780085523172495307229112069939166202511721671904748968934606589702999279663332403655662225374084460291376706916679151764149324177444374590606643838366605181996272409014933080082205048098737253668016260658830645459388519595314928290853199112791333551144805347785109465401055719331231478162870216035573012645710763533896540021550083104281->3,24773058818499217187577663886010908531303294206336895556072197892590450942803807164562754911175164262596715237551312004078542654996496301487027034803410086499747369353221485073240039340641397198525027728751956658900801359887190562885573922317930300068615009483578963467556425525328780085523172495307229112069939166202511721671904748968934606589702999279663332403655662225374084460291376706916679151764149324177444374590606643838366605181996272409014933080082205048098737253668016260658830645459388519595314928290853199112791333551144805347785109465401055719331231478162870216035573012645710763533896540021550083104281 \ No newline at end of file diff --git a/jetbra-2024/config-jetbrains/url.conf b/jetbra-2024/config-jetbrains/url.conf new file mode 100644 index 0000000..5b730d2 --- /dev/null +++ b/jetbra-2024/config-jetbrains/url.conf @@ -0,0 +1,3 @@ +[URL] +PREFIX,https://account.jetbrains.com/lservice/rpc/validateKey.action +PREFIX,https://account.jetbrains.com.cn/lservice/rpc/validateKey.action \ No newline at end of file diff --git a/jetbra-2024/ja-netfilter.jar b/jetbra-2024/ja-netfilter.jar new file mode 100644 index 0000000..b72565a Binary files /dev/null and b/jetbra-2024/ja-netfilter.jar differ diff --git a/jetbra-2024/plugins-jetbrains/dns.jar b/jetbra-2024/plugins-jetbrains/dns.jar new file mode 100644 index 0000000..113c699 Binary files /dev/null and b/jetbra-2024/plugins-jetbrains/dns.jar differ diff --git a/jetbra-2024/plugins-jetbrains/hideme.jar b/jetbra-2024/plugins-jetbrains/hideme.jar new file mode 100644 index 0000000..a21ed52 Binary files /dev/null and b/jetbra-2024/plugins-jetbrains/hideme.jar differ diff --git a/jetbra-2024/plugins-jetbrains/power.jar b/jetbra-2024/plugins-jetbrains/power.jar new file mode 100644 index 0000000..1acc698 Binary files /dev/null and b/jetbra-2024/plugins-jetbrains/power.jar differ diff --git a/jetbra-2024/plugins-jetbrains/url.jar b/jetbra-2024/plugins-jetbrains/url.jar new file mode 100644 index 0000000..495804e Binary files /dev/null and b/jetbra-2024/plugins-jetbrains/url.jar differ diff --git a/jetbra-2024/scripts/install-all-users.vbs b/jetbra-2024/scripts/install-all-users.vbs new file mode 100644 index 0000000..60d95fb --- /dev/null +++ b/jetbra-2024/scripts/install-all-users.vbs @@ -0,0 +1,73 @@ +If Not WScript.Arguments.Named.Exists("elevate") Then + CreateObject("Shell.Application").ShellExecute WScript.FullName, """" & WScript.ScriptFullName & """ /elevate", "", "runas", 10 + WScript.Quit +End If + +Set oShell = CreateObject("WScript.Shell") +Set oEnvSystem = oShell.Environment("SYSTEM") +Set oFS = CreateObject("Scripting.FileSystemObject") + +Dim sBasePath, sJarFile +sBasePath = oFS.GetParentFolderName(oFS.GetParentFolderName(WScript.ScriptFullName)) +sJarFile = sBasePath & "\ja-netfilter.jar" + +If Not oFS.FileExists(sJarFile) Then + MsgBox "ja-netfilter.jar not found", vbOKOnly Or vbCritical + WScript.Quit -1 +End If + +MsgBox "It may take a few seconds to execute this script." & vbCrLf & vbCrLf & "Click 'OK' button and wait for the prompt of 'Done.' to pop up!" + +Dim sEnvKey, sEnvVal, aJBProducts +aJBProducts = Array("idea", "clion", "phpstorm", "goland", "pycharm", "webstorm", "webide", "rider", "datagrip", "rubymine", "dataspell", "aqua", "rustrover", "gateway", "jetbrains_client", "jetbrainsclient", "studio", "devecostudio") + +Set re = New RegExp +re.Global = True +re.IgnoreCase = True +re.Pattern = "^\-javaagent:.*[\/\\]ja\-netfilter\.jar.*" + +Sub RemoveEnv(env) + On Error Resume Next + + For Each sPrd in aJBProducts + sEnvKey = UCase(sPrd) & "_VM_OPTIONS" + sEnvVal = oShell.ExpandEnvironmentStrings("%" & sEnvKey & "%") + If sEnvVal <> ("%" & sEnvKey & "%") Then + env.Remove(sEnvKey) + End If + Next +End Sub + +RemoveEnv oShell.Environment("USER") + +Dim sVmOptionsFile +For Each sPrd in aJBProducts + sEnvKey = UCase(sPrd) & "_VM_OPTIONS" + sVmOptionsFile = sBasePath & "\vmoptions\" & sPrd & ".vmoptions" + If oFS.FileExists(sVmOptionsFile) Then + ProcessVmOptions sVmOptionsFile + oEnvSystem(sEnvKey) = sVmOptionsFile + End If +Next + +Sub ProcessVmOptions(ByVal file) + Dim sLine, sNewContent, bMatch + Set oFile = oFS.OpenTextFile(file, 1, 0) + + sNewContent = "" + Do Until oFile.AtEndOfStream + sLine = oFile.ReadLine + bMatch = re.Test(sLine) + If Not bMatch Then + sNewContent = sNewContent & sLine & vbLf + End If + Loop + oFile.Close + + sNewContent = sNewContent & "-javaagent:" & sJarFile & "=jetbrains" + Set oFile = oFS.OpenTextFile(file, 2, 0) + oFile.Write sNewContent + oFile.Close +End Sub + +MsgBox "Done." diff --git a/jetbra-2024/scripts/install-current-user.vbs b/jetbra-2024/scripts/install-current-user.vbs new file mode 100644 index 0000000..a79952c --- /dev/null +++ b/jetbra-2024/scripts/install-current-user.vbs @@ -0,0 +1,54 @@ +Set oShell = CreateObject("WScript.Shell") +Set oEnv = oShell.Environment("USER") +Set oFS = CreateObject("Scripting.FileSystemObject") + +Dim sEnvKey, sEnvVal, aJBProducts +aJBProducts = Array("idea", "clion", "phpstorm", "goland", "pycharm", "webstorm", "webide", "rider", "datagrip", "rubymine", "dataspell", "aqua", "rustrover", "gateway", "jetbrains_client", "jetbrainsclient", "studio", "devecostudio") + +Set re = New RegExp +re.Global = True +re.IgnoreCase = True +re.Pattern = "^\-javaagent:.*[\/\\]ja\-netfilter\.jar.*" + +Dim sBasePath, sJarFile +sBasePath = oFS.GetParentFolderName(oShell.CurrentDirectory) +sJarFile = sBasePath & "\ja-netfilter.jar" + +If Not oFS.FileExists(sJarFile) Then + MsgBox "ja-netfilter.jar not found", vbOKOnly Or vbCritical + WScript.Quit -1 +End If + +MsgBox "It may take a few seconds to execute this script." & vbCrLf & vbCrLf & "Click 'OK' button and wait for the prompt of 'Done.' to pop up!" + +Dim sVmOptionsFile +For Each sPrd in aJBProducts + sEnvKey = UCase(sPrd) & "_VM_OPTIONS" + sVmOptionsFile = sBasePath & "\vmoptions\" & sPrd & ".vmoptions" + If oFS.FileExists(sVmOptionsFile) Then + ProcessVmOptions sVmOptionsFile + oEnv(sEnvKey) = sVmOptionsFile + End If +Next + +Sub ProcessVmOptions(ByVal file) + Dim sLine, sNewContent, bMatch + Set oFile = oFS.OpenTextFile(file, 1, 0) + + sNewContent = "" + Do Until oFile.AtEndOfStream + sLine = oFile.ReadLine + bMatch = re.Test(sLine) + If Not bMatch Then + sNewContent = sNewContent & sLine & vbLf + End If + Loop + oFile.Close + + sNewContent = sNewContent & "-javaagent:" & sJarFile & "=jetbrains" + Set oFile = oFS.OpenTextFile(file, 2, 0) + oFile.Write sNewContent + oFile.Close +End Sub + +MsgBox "Done." diff --git a/jetbra-2024/scripts/install.sh b/jetbra-2024/scripts/install.sh new file mode 100644 index 0000000..1f66443 --- /dev/null +++ b/jetbra-2024/scripts/install.sh @@ -0,0 +1,91 @@ +#!/bin/sh + +set -e + +OS_NAME=$(uname -s) +JB_PRODUCTS="idea clion phpstorm goland pycharm webstorm webide rider datagrip rubymine dataspell aqua rustrover gateway jetbrains_client jetbrainsclient studio devecostudio" + +BASE_PATH=$(dirname $( + cd $(dirname "$0") + pwd +)) + +JAR_FILE_PATH="${BASE_PATH}/ja-netfilter.jar" + +if [ ! -f "${JAR_FILE_PATH}" ]; then + echo 'ja-netfilter.jar not found' + exit -1 +fi + +KDE_ENV_DIR="${HOME}/.config/plasma-workspace/env" +LAUNCH_AGENTS_DIR="${HOME}/Library/LaunchAgents" + +PROFILE_PATH="${HOME}/.profile" +ZSH_PROFILE_PATH="${HOME}/.zshrc" +PLIST_PATH="${LAUNCH_AGENTS_DIR}/jetbrains.vmoptions.plist" + +if [ $OS_NAME = "Darwin" ]; then + BASH_PROFILE_PATH="${HOME}/.bash_profile" + + mkdir -p "${LAUNCH_AGENTS_DIR}" + echo 'Labeljetbrains.vmoptionsProgramArgumentssh-c' >"${PLIST_PATH}" +else + BASH_PROFILE_PATH="${HOME}/.bashrc" + mkdir -p "${KDE_ENV_DIR}" +fi + +touch "${PROFILE_PATH}" +touch "${BASH_PROFILE_PATH}" +touch "${ZSH_PROFILE_PATH}" + +MY_VMOPTIONS_SHELL_NAME="jetbrains.vmoptions.sh" +MY_VMOPTIONS_SHELL_FILE="${HOME}/.${MY_VMOPTIONS_SHELL_NAME}" +echo '#!/bin/sh' >"${MY_VMOPTIONS_SHELL_FILE}" + +EXEC_LINE='___MY_VMOPTIONS_SHELL_FILE="${HOME}/.jetbrains.vmoptions.sh"; if [ -f "${___MY_VMOPTIONS_SHELL_FILE}" ]; then . "${___MY_VMOPTIONS_SHELL_FILE}"; fi' + +for PRD in $JB_PRODUCTS; do + VM_FILE_PATH="${BASE_PATH}/vmoptions/${PRD}.vmoptions" + if [ ! -f "${VM_FILE_PATH}" ]; then + continue + fi + + if [ $OS_NAME = "Darwin" ]; then + sed -i '' '/^\-javaagent:.*[\/\\]ja\-netfilter\.jar.*/d' "${VM_FILE_PATH}" + else + sed -i '/^\-javaagent:.*[\/\\]ja\-netfilter\.jar.*/d' "${VM_FILE_PATH}" + fi + + echo "-javaagent:${JAR_FILE_PATH}=jetbrains" >>"${VM_FILE_PATH}" + + ENV_NAME=$(echo $PRD | tr '[a-z]' '[A-Z]')"_VM_OPTIONS" + echo "export ${ENV_NAME}=\"${VM_FILE_PATH}\"" >>"${MY_VMOPTIONS_SHELL_FILE}" + + if [ $OS_NAME = "Darwin" ]; then + launchctl setenv "${ENV_NAME}" "${VM_FILE_PATH}" + echo "launchctl setenv \"${ENV_NAME}\" \"${VM_FILE_PATH}\"" >>"${PLIST_PATH}" + fi +done + +if [ $OS_NAME = "Darwin" ]; then + sed -i '' '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${PROFILE_PATH}" >/dev/null 2>&1 + sed -i '' '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${BASH_PROFILE_PATH}" >/dev/null 2>&1 + sed -i '' '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${ZSH_PROFILE_PATH}" >/dev/null 2>&1 + + echo 'RunAtLoad' >>"${PLIST_PATH}" +else + sed -i '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${PROFILE_PATH}" >/dev/null 2>&1 + sed -i '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${BASH_PROFILE_PATH}" >/dev/null 2>&1 + sed -i '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${ZSH_PROFILE_PATH}" >/dev/null 2>&1 +fi + +echo "${EXEC_LINE}" >>"${PROFILE_PATH}" +echo "${EXEC_LINE}" >>"${BASH_PROFILE_PATH}" +echo "${EXEC_LINE}" >>"${ZSH_PROFILE_PATH}" + +if [ $OS_NAME = "Darwin" ]; then + echo 'done. the "kill Dock" command can fix the crash issue.' +else + ln -sf "${MY_VMOPTIONS_SHELL_FILE}" "${KDE_ENV_DIR}/${MY_VMOPTIONS_SHELL_NAME}" + echo "done. you'd better log off first!" +fi diff --git a/jetbra-2024/scripts/uninstall-all-users.vbs b/jetbra-2024/scripts/uninstall-all-users.vbs new file mode 100644 index 0000000..f067438 --- /dev/null +++ b/jetbra-2024/scripts/uninstall-all-users.vbs @@ -0,0 +1,28 @@ +If Not WScript.Arguments.Named.Exists("elevate") Then + CreateObject("Shell.Application").ShellExecute WScript.FullName, """" & WScript.ScriptFullName & """ /elevate", "", "runas", 10 + WScript.Quit +End If + +MsgBox "It may take a few seconds to execute this script." & vbCrLf & vbCrLf & "Click 'OK' button and wait for the prompt of 'Done.' to pop up!" + +Sub RemoveEnv(env) + On Error Resume Next + + Dim sEnvKey, sEnvVal, aJBProducts + aJBProducts = Array("idea", "clion", "phpstorm", "goland", "pycharm", "webstorm", "webide", "rider", "datagrip", "rubymine", "dataspell", "aqua", "rustrover", "gateway", "jetbrains_client", "jetbrainsclient", "studio", "devecostudio") + + For Each sPrd in aJBProducts + sEnvKey = UCase(sPrd) & "_VM_OPTIONS" + sEnvVal = oShell.ExpandEnvironmentStrings("%" & sEnvKey & "%") + If sEnvVal <> ("%" & sEnvKey & "%") Then + env.Remove(sEnvKey) + End If + Next +End Sub + +Set oShell = CreateObject("WScript.Shell") + +RemoveEnv oShell.Environment("USER") +RemoveEnv oShell.Environment("SYSTEM") + +MsgBox "Done." diff --git a/jetbra-2024/scripts/uninstall-current-user.vbs b/jetbra-2024/scripts/uninstall-current-user.vbs new file mode 100644 index 0000000..97553dc --- /dev/null +++ b/jetbra-2024/scripts/uninstall-current-user.vbs @@ -0,0 +1,17 @@ +Set oShell = CreateObject("WScript.Shell") +Set oEnv = oShell.Environment("USER") + +Dim sEnvKey, sEnvVal, aJBProducts +aJBProducts = Array("idea", "clion", "phpstorm", "goland", "pycharm", "webstorm", "webide", "rider", "datagrip", "rubymine", "dataspell", "aqua", "rustrover", "gateway", "jetbrains_client", "jetbrainsclient", "studio", "devecostudio") + +MsgBox "It may take a few seconds to execute this script." & vbCrLf & vbCrLf & "Click 'OK' button and wait for the prompt of 'Done.' to pop up!" + +For Each sPrd in aJBProducts + sEnvKey = UCase(sPrd) & "_VM_OPTIONS" + sEnvVal = oShell.ExpandEnvironmentStrings("%" & sEnvKey & "%") + If sEnvVal <> ("%" & sEnvKey & "%") Then + oEnv.Remove(sEnvKey) + End If +Next + +MsgBox "Done." diff --git a/jetbra-2024/scripts/uninstall.sh b/jetbra-2024/scripts/uninstall.sh new file mode 100644 index 0000000..24b69e0 --- /dev/null +++ b/jetbra-2024/scripts/uninstall.sh @@ -0,0 +1,50 @@ +#!/bin/sh + +set -e + +OS_NAME=$(uname -s) +JB_PRODUCTS="idea clion phpstorm goland pycharm webstorm webide rider datagrip rubymine dataspell aqua rustrover gateway jetbrains_client jetbrainsclient studio devecostudio" + +KDE_ENV_DIR="${HOME}/.config/plasma-workspace/env" + +PROFILE_PATH="${HOME}/.profile" +ZSH_PROFILE_PATH="${HOME}/.zshrc" +PLIST_PATH="${HOME}/Library/LaunchAgents/jetbrains.vmoptions.plist" + +if [ $OS_NAME = "Darwin" ]; then + BASH_PROFILE_PATH="${HOME}/.bash_profile" +else + BASH_PROFILE_PATH="${HOME}/.bashrc" +fi + +touch "${PROFILE_PATH}" +touch "${BASH_PROFILE_PATH}" +touch "${ZSH_PROFILE_PATH}" + +MY_VMOPTIONS_SHELL_NAME="jetbrains.vmoptions.sh" +MY_VMOPTIONS_SHELL_FILE="${HOME}/.${MY_VMOPTIONS_SHELL_NAME}" + +rm -rf "${MY_VMOPTIONS_SHELL_FILE}" + +if [ $OS_NAME = "Darwin" ]; then + for PRD in $JB_PRODUCTS; do + ENV_NAME=$(echo $PRD | tr '[a-z]' '[A-Z]')"_VM_OPTIONS" + + launchctl unsetenv "${ENV_NAME}" + done + + rm -rf "${PLIST_PATH}" + + sed -i '' '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${PROFILE_PATH}" >/dev/null 2>&1 + sed -i '' '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${BASH_PROFILE_PATH}" >/dev/null 2>&1 + sed -i '' '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${ZSH_PROFILE_PATH}" >/dev/null 2>&1 + + echo 'done.' +else + sed -i '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${PROFILE_PATH}" >/dev/null 2>&1 + sed -i '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${BASH_PROFILE_PATH}" >/dev/null 2>&1 + sed -i '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${ZSH_PROFILE_PATH}" >/dev/null 2>&1 + + rm -rf "${KDE_ENV_DIR}/${MY_VMOPTIONS_SHELL_NAME}" + echo "done. you'd better log off first!" +fi diff --git a/jetbra-2024/sha1sum.txt b/jetbra-2024/sha1sum.txt new file mode 100644 index 0000000..19d7761 --- /dev/null +++ b/jetbra-2024/sha1sum.txt @@ -0,0 +1,34 @@ +2a723c2ef30be4a5c167c6639bf9ec0b9c7e7ca2 ja-netfilter.jar +06777a6f603fa3c4eb83b4a9eca76331e40006f4 README.pdf +67c0745960d407921cf8f65f4e1417aaf9f2704b readme.txt +4e8693b5a7a3837cf7f6db0c4f1316f376d34721 plugins-jetbrains/dns.jar +729d00e4fa04ca49c00b5b6aa60706dfadd5644e plugins-jetbrains/hideme.jar +26ee7577969265ff77a7fd786bcb707fe21a3d6b plugins-jetbrains/power.jar +b1bebbee8d98218db5794f596001b8b7427ae0c7 plugins-jetbrains/url.jar +84fc47685c4768eff051361777664bb764d5b844 config-jetbrains/dns.conf +63e34a637babf1ba1eb8f37c494c964c3bf5c08d config-jetbrains/power.conf +0b219cc137a185439fb9bd99d85b8fe320967507 config-jetbrains/url.conf +d78dcc913ab0bb4fde9f415bc30e671ca7a0e3b2 scripts/install-all-users.vbs +75a91f13c9679f6e73d5e1c19f6c604ad5b9661b scripts/install-current-user.vbs +5d60fd44d72b1517a23459930173429ba522fdd5 scripts/install.sh +9849b148c6ad577c6a634fe1cee0386ea0227516 scripts/uninstall-all-users.vbs +a0851ee0ff972267ba41c69e9eefffe5f220365c scripts/uninstall-current-user.vbs +ed6ed033e8726fda006887beba0ffde73d178faf scripts/uninstall.sh +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/aqua.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/clion.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/datagrip.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/dataspell.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/devecostudio.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/gateway.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/goland.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/idea.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/jetbrains_client.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/jetbrainsclient.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/phpstorm.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/pycharm.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/rider.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/rubymine.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/rustrover.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/studio.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/webide.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/webstorm.vmoptions diff --git a/jetbra-2024/vmoptions/aqua.vmoptions b/jetbra-2024/vmoptions/aqua.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra-2024/vmoptions/aqua.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra-2024/vmoptions/clion.vmoptions b/jetbra-2024/vmoptions/clion.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra-2024/vmoptions/clion.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra-2024/vmoptions/datagrip.vmoptions b/jetbra-2024/vmoptions/datagrip.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra-2024/vmoptions/datagrip.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra-2024/vmoptions/dataspell.vmoptions b/jetbra-2024/vmoptions/dataspell.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra-2024/vmoptions/dataspell.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra-2024/vmoptions/devecostudio.vmoptions b/jetbra-2024/vmoptions/devecostudio.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra-2024/vmoptions/devecostudio.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra-2024/vmoptions/gateway.vmoptions b/jetbra-2024/vmoptions/gateway.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra-2024/vmoptions/gateway.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra-2024/vmoptions/goland.vmoptions b/jetbra-2024/vmoptions/goland.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra-2024/vmoptions/goland.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra-2024/vmoptions/idea.vmoptions b/jetbra-2024/vmoptions/idea.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra-2024/vmoptions/idea.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra-2024/vmoptions/jetbrains_client.vmoptions b/jetbra-2024/vmoptions/jetbrains_client.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra-2024/vmoptions/jetbrains_client.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra-2024/vmoptions/jetbrainsclient.vmoptions b/jetbra-2024/vmoptions/jetbrainsclient.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra-2024/vmoptions/jetbrainsclient.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra-2024/vmoptions/phpstorm.vmoptions b/jetbra-2024/vmoptions/phpstorm.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra-2024/vmoptions/phpstorm.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra-2024/vmoptions/pycharm.vmoptions b/jetbra-2024/vmoptions/pycharm.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra-2024/vmoptions/pycharm.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra-2024/vmoptions/rider.vmoptions b/jetbra-2024/vmoptions/rider.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra-2024/vmoptions/rider.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra-2024/vmoptions/rubymine.vmoptions b/jetbra-2024/vmoptions/rubymine.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra-2024/vmoptions/rubymine.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra-2024/vmoptions/rustrover.vmoptions b/jetbra-2024/vmoptions/rustrover.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra-2024/vmoptions/rustrover.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra-2024/vmoptions/studio.vmoptions b/jetbra-2024/vmoptions/studio.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra-2024/vmoptions/studio.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra-2024/vmoptions/webide.vmoptions b/jetbra-2024/vmoptions/webide.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra-2024/vmoptions/webide.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra-2024/vmoptions/webstorm.vmoptions b/jetbra-2024/vmoptions/webstorm.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra-2024/vmoptions/webstorm.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git "a/jetbra-2024/\346\277\200\346\264\273\347\240\201.txt" "b/jetbra-2024/\346\277\200\346\264\273\347\240\201.txt" new file mode 100644 index 0000000..392f0f1 --- /dev/null +++ "b/jetbra-2024/\346\277\200\346\264\273\347\240\201.txt" @@ -0,0 +1,59 @@ + +##########教程和专属激活码########## + +最新破解教程:https://blog.idejihuo.com/jetbrains/intellij-idea-2025-1-latest-version-activation-code-permanent-activation-tutorial-cracking-tool.html + +专属激活码(打开复制复制对应IDE激活码,需和破解工具一起使用):http://jets.idejihuo.com/v3 + + +##########临时激活码 时效性无法保证 长期免费更新########## + +免费激活码1:http://www.idejihuo.cn +免费激活码2:http://www.idejihuo.com + + +##########激活工具 免费获取########## + +激活工具和激活码会随版本持续更新,均免费获取,可以关注公众号「终码一生」,回复【永久激活】获取 + + + +注:jetbra路径不要含空格,如有其它破解插件要移除! + +1)将永久激活插件 jetbra(ja-netfilter-all) 放固定位置 +例如:D:\jetbra\ja-netfilter.jar + +2)右键以管理员身份运行脚本自动配置VM自定义选项 +jetbra\script\install-all-users.vbs + +3)启动JetBrains产品,许可证激活选择激活码方式(Activate code) +jetbra插件JetBrains产品激活码页面主站新地址 https://3.jetbra.in + +JetBrains部分常用产品最新激活码,需要配合jetbra破解插件使用。 + +【IntelliJ IDEA 2024.2.x】 +FV8EM46DQYC5AW9-eyJsaWNlbnNlSWQiOiJGVjhFTTQ2RFFZQzVBVzkiLCJsaWNlbnNlZU5hbWUiOiJtZW5vcmFoIHBhcmFwZXQiLCJsaWNlbnNlZVR5cGUiOiJQRVJTT05BTCIsImFzc2lnbmVlTmFtZSI6IiIsImFzc2lnbmVlRW1haWwiOiIiLCJsaWNlbnNlUmVzdHJpY3Rpb24iOiIiLCJjaGVja0NvbmN1cnJlbnRVc2UiOmZhbHNlLCJwcm9kdWN0cyI6W3siY29kZSI6IlBDV01QIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJQUlIiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOnRydWV9LHsiY29kZSI6IlBEQiIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiUFNJIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJJSSIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6ZmFsc2V9XSwibWV0YWRhdGEiOiIwMjIwMjQwNzAyUFNBWDAwMDAwNVgiLCJoYXNoIjoiMTIzNDU2NzgvMC01NDE4MTY2MjkiLCJncmFjZVBlcmlvZERheXMiOjcsImF1dG9Qcm9sb25nYXRlZCI6ZmFsc2UsImlzQXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwidHJpYWwiOmZhbHNlLCJhaUFsbG93ZWQiOnRydWV9-cH8qBniG31nF8954hthJJuzF6Fk4RQ9T03IfNxsFkuxUcwaAGHKOcRudvBZIAbLwDDFw63q2QZsnpwthBb/6IqBYnJrjRC83a8wkYKGN8HqAyDtbqdLOxLjcaiAiSKzektfAXn6nGNfDeygcFr/WzMfI0on/43ByuwxmSrjwYc4M8SCR0nkDAi0XwXNnFp3vSp0gJQd+lJtkSHO2KR7gUyNDZOPVduljJGbdLJUK6UcUjrlAd6NrTNqpu5P7hcYRaNzjoJ0KeIx5k9KmMCdcfQBia/zSHUbwZiecFsyjxqtIU0C3TDaX1OM4siJVDpgrXi+ocY86hiiYE79ygJf2IA==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + +【PhpStorm 2024.2.x】 +LK57VMVACTAYXFP-eyJsaWNlbnNlSWQiOiJMSzU3Vk1WQUNUQVlYRlAiLCJsaWNlbnNlZU5hbWUiOiJtZW5vcmFoIHBhcmFwZXQiLCJsaWNlbnNlZVR5cGUiOiJQRVJTT05BTCIsImFzc2lnbmVlTmFtZSI6IiIsImFzc2lnbmVlRW1haWwiOiIiLCJsaWNlbnNlUmVzdHJpY3Rpb24iOiIiLCJjaGVja0NvbmN1cnJlbnRVc2UiOmZhbHNlLCJwcm9kdWN0cyI6W3siY29kZSI6IlBDV01QIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJQUyIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IlBTSSIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6dHJ1ZX1dLCJtZXRhZGF0YSI6IjAyMjAyNDA3MDJQU0FYMDAwMDA1WCIsImhhc2giOiIxMjM0NTY3OC8wOTIwNDIzMTY5IiwiZ3JhY2VQZXJpb2REYXlzIjo3LCJhdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlLCJpc0F1dG9Qcm9sb25nYXRlZCI6ZmFsc2UsInRyaWFsIjpmYWxzZSwiYWlBbGxvd2VkIjp0cnVlfQ==-giMzZfCCESsBnJddcEgB017IbEg9bfmvITIA+KzajF26fvSBLHtN5qGuPNtAFuB1hPoRvAb4Xqj8rSrIfD0sDxF2ZwS4rkTsqbVRFz70y5+j1yFg7L2Z0g6pw5RNt2fkaYJ2s2T6522tWGcNKEQYDEOaH4JftAB3b66ht7kymV+fdNsD3ffa0TZUke+GfK0wcrJxUtePCUHQV3DsbKxLPERLLoGp19si57cDrZNZwMEUPDphDW5nesd0SAWgYEQSx2CN/0CJOZE9wCvyHETmpBShyOt5Lgq02Ve9jIfn/ARTFEeFXtbVrYSbTOARabhJ9duWKs+v2CiwcuEKLV9mrg==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + +【PyCharm 2024.2.x】 +GAJWL09BT5RSXDR-eyJsaWNlbnNlSWQiOiJHQUpXTDA5QlQ1UlNYRFIiLCJsaWNlbnNlZU5hbWUiOiJtZW5vcmFoIHBhcmFwZXQiLCJsaWNlbnNlZVR5cGUiOiJQRVJTT05BTCIsImFzc2lnbmVlTmFtZSI6IiIsImFzc2lnbmVlRW1haWwiOiIiLCJsaWNlbnNlUmVzdHJpY3Rpb24iOiIiLCJjaGVja0NvbmN1cnJlbnRVc2UiOmZhbHNlLCJwcm9kdWN0cyI6W3siY29kZSI6IlBDV01QIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJQQyIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IlBTSSIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6dHJ1ZX1dLCJtZXRhZGF0YSI6IjAyMjAyNDA3MDJQU0FYMDAwMDA1WCIsImhhc2giOiIxMjM0NTY3OC8wLTQ2MTc4NjQwOSIsImdyYWNlUGVyaW9kRGF5cyI6NywiYXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwiaXNBdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlLCJ0cmlhbCI6ZmFsc2UsImFpQWxsb3dlZCI6dHJ1ZX0=-UeOCCiS72PGvOIS9go0yIhDFVmPBvbKM56D9w0adVaGcYLtC7YxNr/5MQ/3+Mr05tQQAhMz12vBTb9sjJAXBo+HBzCv1o9IFZnJK2rf3pCXl83ulriBUQ6M0H6GUUy+Mc1fl0EGWquoNExZMujCkReWoeabxwwKPNCvHqHqkW1rU/+cwiVKjVfbIgQW9aChIwyYwexzSlM0TlHvQGfncEzI0+uYNxjRQUjemLlGJooYD0ycSMMTyTvM95QHi25DZjmQRkdzIhDA2l4uPp+C+XEAIdIST2rjEPolvJGcVu7P/DI77LDDqZwLtD8mFXh9lFqMEw9titvy4mYFlYp/xaw==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + +【WebStorm 2024.2.x】 +1Z9RTLFFQRXP923-eyJsaWNlbnNlSWQiOiIxWjlSVExGRlFSWFA5MjMiLCJsaWNlbnNlZU5hbWUiOiJtZW5vcmFoIHBhcmFwZXQiLCJsaWNlbnNlZVR5cGUiOiJQRVJTT05BTCIsImFzc2lnbmVlTmFtZSI6IiIsImFzc2lnbmVlRW1haWwiOiIiLCJsaWNlbnNlUmVzdHJpY3Rpb24iOiIiLCJjaGVja0NvbmN1cnJlbnRVc2UiOmZhbHNlLCJwcm9kdWN0cyI6W3siY29kZSI6IlBDV01QIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJXUyIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IlBTSSIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6dHJ1ZX1dLCJtZXRhZGF0YSI6IjAyMjAyNDA3MDJQU0FYMDAwMDA1WCIsImhhc2giOiIxMjM0NTY3OC8wNzY0Njg1NzM3IiwiZ3JhY2VQZXJpb2REYXlzIjo3LCJhdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlLCJpc0F1dG9Qcm9sb25nYXRlZCI6ZmFsc2UsInRyaWFsIjpmYWxzZSwiYWlBbGxvd2VkIjp0cnVlfQ==-bDIQ6Ihy8nWMd6+TEQxRYY2FDAO5yhA1knCEpdqRbstNWI78rmC/WTYm8PFmDK2QEEE7uawIblm6c2FAXLrLzkA7R+V3G+q/xZyYPGftNp4n7mW+VT35+t131R5UvTIoQNzf3dCJDFBD2fiJwDNgUzdwEKEjagjNLlSk5HQam3wZh8+x8aao2yEzgoBHgGrs+8Y8BHKecS9eZImboDJ+e8cT+JI92nNCx1IhPgVJDieNKlbYbCxJ9HgvHFUMSrkh0MPORn9IxmKLt6ssMU2kEMWR4HqcQjUgGRzt8cWJh0nihrqBlDFZwfKQj25oK07vAu22ysN4CkcNRyMcJBBP9A==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + +【Rider 2024.2.x】 +0H5PC974JDMA7B0-eyJsaWNlbnNlSWQiOiIwSDVQQzk3NEpETUE3QjAiLCJsaWNlbnNlZU5hbWUiOiJtZW5vcmFoIHBhcmFwZXQiLCJsaWNlbnNlZVR5cGUiOiJQRVJTT05BTCIsImFzc2lnbmVlTmFtZSI6IiIsImFzc2lnbmVlRW1haWwiOiIiLCJsaWNlbnNlUmVzdHJpY3Rpb24iOiIiLCJjaGVja0NvbmN1cnJlbnRVc2UiOmZhbHNlLCJwcm9kdWN0cyI6W3siY29kZSI6IlJEIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiUERCIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJQU0kiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOnRydWV9XSwibWV0YWRhdGEiOiIwMjIwMjQwNzAyUFNBWDAwMDAwNVgiLCJoYXNoIjoiMTIzNDU2NzgvMC0xODc3MTIwNzU2IiwiZ3JhY2VQZXJpb2REYXlzIjo3LCJhdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlLCJpc0F1dG9Qcm9sb25nYXRlZCI6ZmFsc2UsInRyaWFsIjpmYWxzZSwiYWlBbGxvd2VkIjp0cnVlfQ==-YTG7LSYI79iFNfKNuHw85uQexHaQ1PMFTv5aBVxkrf2xcHmtX/oJZG9sE2bi32OVyMCnPfTV+SFkArsEw0jKNfGcCmjHIT3HctA+epp3POhEk2rN9DdmMnq0bEHXBJwAtsq47QqJLsBQVFKm4+JzjLXIdQTzQpJY9CIv1lAAWfCsw+hTEDduA8FRgnAhr7YMuJ7GNmZDWsgBiXY9zAHsJRLH2asLazoFJ5myio9k79Ga2leRzXVfm482DzhMJrPAxDlCPoN7me6lSYkVmVy5A2YjW4Zitl1HIQQoyu+Hd7WXcXgZsoFfrvx3Xghe9qw7JZaHzynldocUoW/H2rAzOQ==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + +【CLion 2024.2.x】 +I1EKS18DJA9M4KU-eyJsaWNlbnNlSWQiOiJJMUVLUzE4REpBOU00S1UiLCJsaWNlbnNlZU5hbWUiOiJtZW5vcmFoIHBhcmFwZXQiLCJsaWNlbnNlZVR5cGUiOiJQRVJTT05BTCIsImFzc2lnbmVlTmFtZSI6IiIsImFzc2lnbmVlRW1haWwiOiIiLCJsaWNlbnNlUmVzdHJpY3Rpb24iOiIiLCJjaGVja0NvbmN1cnJlbnRVc2UiOmZhbHNlLCJwcm9kdWN0cyI6W3siY29kZSI6IlBDV01QIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJDTCIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IlBTSSIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6dHJ1ZX1dLCJtZXRhZGF0YSI6IjAyMjAyNDA3MDJQU0FYMDAwMDA1WCIsImhhc2giOiIxMjM0NTY3OC8wMzMxNTgxNTM4IiwiZ3JhY2VQZXJpb2REYXlzIjo3LCJhdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlLCJpc0F1dG9Qcm9sb25nYXRlZCI6ZmFsc2UsInRyaWFsIjpmYWxzZSwiYWlBbGxvd2VkIjp0cnVlfQ==-aBxu18kI8ObI+2malKBqZXqpCPT2T7+0adYDU0HBQMeY1J+M/lDGpdQjpDnlDWW3W7wb4QbES3TXl8kKRrVG8LgtwVg9DhtNSWcolfL0R5x73smRjZQB5Jfv4fwBtBu+I4fTrkP9HAwciOIKO3iyI8wsH8HVGR9AXgpl/wTLCSlj8/7IBAFz6wN8mgSdxV6ReEGSjQSDSevdQUbsFkq3LVYG9EXVvleltbdFq7wqVCmvmcnW1idgfDKzJrwlxtJRiLZoZIoEFJ/PXcivuKTJyiqKlDfOuaPt6wZU+aqw/xB5dBS51rzD8UwoLcnN5zlG5WwQPWZja1/UwTokUxR8Gw==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + +【DataGrip 2024.2.x】 +54H0PAD972IO7OS-eyJsaWNlbnNlSWQiOiI1NEgwUEFEOTcySU83T1MiLCJsaWNlbnNlZU5hbWUiOiJtZW5vcmFoIHBhcmFwZXQiLCJsaWNlbnNlZVR5cGUiOiJQRVJTT05BTCIsImFzc2lnbmVlTmFtZSI6IiIsImFzc2lnbmVlRW1haWwiOiIiLCJsaWNlbnNlUmVzdHJpY3Rpb24iOiIiLCJjaGVja0NvbmN1cnJlbnRVc2UiOmZhbHNlLCJwcm9kdWN0cyI6W3siY29kZSI6IlBEQiIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiREIiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJQU0kiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOnRydWV9XSwibWV0YWRhdGEiOiIwMjIwMjQwNzAyUFNBWDAwMDAwNVgiLCJoYXNoIjoiMTIzNDU2NzgvMC00MTI3ODYxMTYiLCJncmFjZVBlcmlvZERheXMiOjcsImF1dG9Qcm9sb25nYXRlZCI6ZmFsc2UsImlzQXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwidHJpYWwiOmZhbHNlLCJhaUFsbG93ZWQiOnRydWV9-kOcI3r7/OB1foH2R44HwHoAZJfdfTo0y7c1AZF/I9SBxiyNErjzyyFslUgkOD7XqHzhBgy53J2edgvSVy0DhmNswVK8V5YSXO+SLQc0RrQkZy43fb1fbLK26+LHj8gUUkFZuUwlDaXIb3D6SWyWx6tXAFet0ot6O7+lwZ/vGrRDXVdpaL/LBuCVt1pz2a77orzxWKbtgLNmVLVRGi7sFpUgv5syvGDgWG0gClSZHiAyEDzvoGdAJ3e8Y4LDBInHxrGwZYx7uY50lRBewjLvitbfzFm9dVz5bM9+3g+jSlXzKF5aZ9x2TyeGiOy9snk0QpnyGkudLECvI5vM8drRIIw==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + +【RubyMine 2024.2.x】 +3PZMNOLHULXID52-eyJsaWNlbnNlSWQiOiIzUFpNTk9MSFVMWElENTIiLCJsaWNlbnNlZU5hbWUiOiJtZW5vcmFoIHBhcmFwZXQiLCJsaWNlbnNlZVR5cGUiOiJQRVJTT05BTCIsImFzc2lnbmVlTmFtZSI6IiIsImFzc2lnbmVlRW1haWwiOiIiLCJsaWNlbnNlUmVzdHJpY3Rpb24iOiIiLCJjaGVja0NvbmN1cnJlbnRVc2UiOmZhbHNlLCJwcm9kdWN0cyI6W3siY29kZSI6IlBDV01QIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJQU0kiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOnRydWV9LHsiY29kZSI6IlJNIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjpmYWxzZX1dLCJtZXRhZGF0YSI6IjAyMjAyNDA3MDJQU0FYMDAwMDA1WCIsImhhc2giOiIxMjM0NTY3OC8wODg1OTA3NTUiLCJncmFjZVBlcmlvZERheXMiOjcsImF1dG9Qcm9sb25nYXRlZCI6ZmFsc2UsImlzQXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwidHJpYWwiOmZhbHNlLCJhaUFsbG93ZWQiOnRydWV9-Gw4PbXUwvDcHyuCc3xGpt3BRpRRCxGCmOS4rQIJ/N0Aj0aHsf56ne8oMF593cz4KnDAgeacqGSi9+BrIXTEW52BOiogh5xukZSxHhd8FoKmuaBBYsM3ydaZPWhYL1rp65c0AZ5niIULRbb1hReiz1khjdkiGJqs9VHaR6/rF7HGmU1oagPhCw1u8+3nQM1oMiwl/2lxefZGAAk+/+7kRM/uZjg7TsF6a7UCvjYCAoCLxso58r45WWCIVU7Ofec2rFAIFjwflojDv3HjUdjw7ehSS529fJ4c7wqf6Z2o9o+G//po4eco5Sd5xw3dhocj6XX1Q7phz0VeL97UjwLQ8VQ==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + +【GoLand 2024.2.x】 +BPTY4JK1CO0P29R-eyJsaWNlbnNlSWQiOiJCUFRZNEpLMUNPMFAyOVIiLCJsaWNlbnNlZU5hbWUiOiJtZW5vcmFoIHBhcmFwZXQiLCJsaWNlbnNlZVR5cGUiOiJQRVJTT05BTCIsImFzc2lnbmVlTmFtZSI6IiIsImFzc2lnbmVlRW1haWwiOiIiLCJsaWNlbnNlUmVzdHJpY3Rpb24iOiIiLCJjaGVja0NvbmN1cnJlbnRVc2UiOmZhbHNlLCJwcm9kdWN0cyI6W3siY29kZSI6IlBDV01QIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJHTyIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IlBTSSIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6dHJ1ZX1dLCJtZXRhZGF0YSI6IjAyMjAyNDA3MDJQU0FYMDAwMDA1WCIsImhhc2giOiIxMjM0NTY3OC8wLTIxMzg4MjAwMjAiLCJncmFjZVBlcmlvZERheXMiOjcsImF1dG9Qcm9sb25nYXRlZCI6ZmFsc2UsImlzQXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwidHJpYWwiOmZhbHNlLCJhaUFsbG93ZWQiOnRydWV9-OhYvoISC/Bq2JPS8zO7RMvG6+V3z3Cw2tIhUfU0rpcWF5H8LimtMCO4Vdw69OYo3VfeBJkoDm0Lu4fwPOllxlx5gbpwerW2pJCubD/TnfDlxK+gt9rUSihL2mCU4k66VB+8NOLdYSH7zukG8ghtbNoeE4BuAiFP6BLTSEipOy2SKKybEzQ1JArnqJyXa66SrxTegCkz8QSwqaBAtJHaBIJ+1MmnQ8y5wjBXXQJ/+9W8AyaxKM14dKvqYxxcf71PDfgzl12taubbpyL4DzGYUiu5cAdjfpqdx2ZEoalj+IW3M3FWB+2eTzHZ+wvgFMqPt1+GiaC2kZwFbeyD9bDF62Q==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD diff --git a/jetbra/.DS_Store b/jetbra/.DS_Store new file mode 100644 index 0000000..228be86 Binary files /dev/null and b/jetbra/.DS_Store differ diff --git a/jetbra/config-jetbrains/dns.conf b/jetbra/config-jetbrains/dns.conf new file mode 100644 index 0000000..090e4e0 --- /dev/null +++ b/jetbra/config-jetbrains/dns.conf @@ -0,0 +1,3 @@ +[DNS] +EQUAL,jetbrains.com +EQUAL,plugin.obroom.com \ No newline at end of file diff --git a/jetbra/config-jetbrains/power.conf b/jetbra/config-jetbrains/power.conf new file mode 100644 index 0000000..2acb915 --- /dev/null +++ b/jetbra/config-jetbrains/power.conf @@ -0,0 +1,7 @@ +[Result] +; Suit 230914 +EQUAL,75888623192465772084955377951198306702135327313062315225563718470653661793801719178647553532410237467495550800187973529202133466238825354135988657390766050197160093050945611087414688022502220060564716139142356429494315004946432334067127515081383336664162877126600357077796107641437507844835265792365885264118815924123978949395829736969354441202826225673948313261585644898954777409621857150971668073862687253868141869122469331021430401371289707681211947592819675200121184556360932201089199282211738120006888533563163642302207579745484728384486428222208213812291528007428530070242454238203928550683105421062331094750845145505608972009635176965215115688208740845303355991059521804735078574469432870400787428253602342729300042328170420659062588195293985517003844343989763104027328569042852690996233875190439074960872926324787157115483523118473430609411096400697894536993294915535905449630056538884982426205451557516203033628658808550799424730131437543420952769712793044255279152357141856290356977839447381244929084411487482957782888343837193520146442780899122074573307925429597225835206724304378622338028349953089952976438255759582568115277066791679931555627913314296216846420738487344812850701846117667234235837952975099539950423673283,65537,860106576952879101192782278876319243486072481962999610484027161162448933268423045647258145695082284265933019120714643752088997312766689988016808929265129401027490891810902278465065056686129972085119605237470899952751915070244375173428976413406363879128531449407795115913715863867259163957682164040613505040314747660800424242248055421184038777878268502955477482203711835548014501087778959157112423823275878824729132393281517778742463067583320091009916141454657614089600126948087954465055321987012989937065785013284988096504657892738536613208311013047138019418152103262155848541574327484510025594166239784429845180875774012229784878903603491426732347994359380330103328705981064044872334790365894924494923595382470094461546336020961505275530597716457288511366082299255537762891238136381924520749228412559219346777184174219999640906007205260040707839706131662149325151230558316068068139406816080119906833578907759960298749494098180107991752250725928647349597506532778539709852254478061194098069801549845163358315116260915270480057699929968468068015735162890213859113563672040630687357054902747438421559817252127187138838514773245413540030800888215961904267348727206110582505606182944023582459006406137831940959195566364811905585377246353->31872219281407242025505148642475109331663948030010491344733687844358944945421064967310388547820970408352359213697487269225694990179009814674781374751323403257628081559561462351695605167675284372388551941279783515209238245831229026662363729380633136520288327292047232179909791526492877475417113579821717193807584807644097527647305469671333646868883650312280989663788656507661713409911267085806708237966730821529702498972114194166091819277582149433578383639532136271637219758962252614390071122773223025154710411681628917523557526099053858210363406122853294409830276270946292893988830514538950951686480580886602618927728470029090747400687617046511462665469446846624685614084264191213318074804549715573780408305977947238915527798680393538207482620648181504876534152430149355791756374642327623133843473947861771150672096834149014464956451480803326284417202116346454345929350148770746553056995922154382822307758515805142704373984019252210715650875853634697920708113806880196144197384637328982263167395073688501517286678083973976140696077590122053014085412828620051470085033364773099146103525313018873319293728800442101520384088109603555959893639842091339193857485407672132882577840295039058621747654642202620767068924079813640067442975 +EQUAL,4567779103874449240239662079205755693310005494862953689035396528991239683757589293624793159086473078120525402705628668311011890736316009197336637618610678228335893871114776326732074651573599517183986646340269857646364268233297330841971478101796167577290403903951299979151237090006996215332833149647379173998334898565513245453314930221017432024042566544774579402202436449192695033949441775713989000390069186056155554036916655795953904286792217740042538667425813361568996822385856479840230242261144865693876294228019553278637298651584820286962308928945030622629481823105481646878879253938847572671471342492590603058305,65537,24156627931985958051017183040835577271803742470193804806479316178045088981962804168393398987646446251087541768081971475544151551235525470790716604369379805327668466429966167642117961353233058515180243264560201783520956161510523416923017697354365782825500659342029196527776056976223174394946371372849906309277537461992299774200098515526818746947230488275456663264920440977381968978227273889068919338259949793686590492904029279861913225794809675826299753284990778166519152326723946780528965868736869495336993456735232755342913885746267768375682771655854436236934171901662660193080235109535758464079136573948168636773471->986236757547332986472011617696226561292849812918563355472727826767720188564083584387121625107510786855734801053524719833194566624465665316622563244215340671405971599343902468620306327831715457360719532421388780770165778156818229863337344187575566725786793391480600129482653072861971002459947277805295727097226389568776499707662505334062639449916265137796823793276300221537201727072401742985542559596685092673521228140822200236743113743661549252453726123450722876929538747702356573783116366629850199080495560991841329893037291900147497007197055572787780928474439121910577036698817920238800419515637284683828672110 + +[Args] +EQUAL,65537,24773058818499217187577663886010908531303294206336895556072197892590450942803807164562754911175164262596715237551312004078542654996496301487027034803410086499747369353221485073240039340641397198525027728751956658900801359887190562885573922317930300068615009483578963467556425525328780085523172495307229112069939166202511721671904748968934606589702999279663332403655662225374084460291376706916679151764149324177444374590606643838366605181996272409014933080082205048098737253668016260658830645459388519595314928290853199112791333551144805347785109465401055719331231478162870216035573012645710763533896540021550083104281->3,24773058818499217187577663886010908531303294206336895556072197892590450942803807164562754911175164262596715237551312004078542654996496301487027034803410086499747369353221485073240039340641397198525027728751956658900801359887190562885573922317930300068615009483578963467556425525328780085523172495307229112069939166202511721671904748968934606589702999279663332403655662225374084460291376706916679151764149324177444374590606643838366605181996272409014933080082205048098737253668016260658830645459388519595314928290853199112791333551144805347785109465401055719331231478162870216035573012645710763533896540021550083104281 \ No newline at end of file diff --git a/jetbra/config-jetbrains/url.conf b/jetbra/config-jetbrains/url.conf new file mode 100644 index 0000000..bb7fab0 --- /dev/null +++ b/jetbra/config-jetbrains/url.conf @@ -0,0 +1,2 @@ +[URL] +PREFIX,https://account.jetbrains.com/lservice/rpc/validateKey.action \ No newline at end of file diff --git a/jetbra/ja-netfilter.jar b/jetbra/ja-netfilter.jar new file mode 100644 index 0000000..b72565a Binary files /dev/null and b/jetbra/ja-netfilter.jar differ diff --git a/jetbra/plugins-jetbrains/dns.jar b/jetbra/plugins-jetbrains/dns.jar new file mode 100644 index 0000000..113c699 Binary files /dev/null and b/jetbra/plugins-jetbrains/dns.jar differ diff --git a/jetbra/plugins-jetbrains/hideme.jar b/jetbra/plugins-jetbrains/hideme.jar new file mode 100644 index 0000000..a21ed52 Binary files /dev/null and b/jetbra/plugins-jetbrains/hideme.jar differ diff --git a/jetbra/plugins-jetbrains/power.jar b/jetbra/plugins-jetbrains/power.jar new file mode 100644 index 0000000..1acc698 Binary files /dev/null and b/jetbra/plugins-jetbrains/power.jar differ diff --git a/jetbra/plugins-jetbrains/url.jar b/jetbra/plugins-jetbrains/url.jar new file mode 100644 index 0000000..495804e Binary files /dev/null and b/jetbra/plugins-jetbrains/url.jar differ diff --git a/jetbra/readme.txt b/jetbra/readme.txt new file mode 100644 index 0000000..ecc6041 --- /dev/null +++ b/jetbra/readme.txt @@ -0,0 +1,19 @@ +Operation guide: + 1. add -javaagent:/path/to/ja-netfilter.jar=jetbrains to your vmoptions (manual or auto) + 2. log out of the jb account in the 'Licenses' window + 3. use key on page https://jetbra.in/5d84466e31722979266057664941a71893322460 + 4. plugin 'mymap' has been deprecated since version 2022.1 + 5. don't care about the activation time, it is a fallback license and will not expire + +Enjoy it~ + +JBR17: + add these 2 lines to your vmoptions file: (for manual, without any whitespace chars) + --add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED + --add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + +NEW: + Auto configure vmoptions: + macOS or Linux: execute "scripts/install.sh" + Windows: double click to execute "scripts\install-current-user.vbs" (For current user) + "scripts\install-all-users.vbs" (For all users) diff --git a/jetbra/scripts/install-all-users.vbs b/jetbra/scripts/install-all-users.vbs new file mode 100644 index 0000000..6e86328 --- /dev/null +++ b/jetbra/scripts/install-all-users.vbs @@ -0,0 +1,73 @@ +If Not WScript.Arguments.Named.Exists("elevate") Then + CreateObject("Shell.Application").ShellExecute WScript.FullName, """" & WScript.ScriptFullName & """ /elevate", "", "runas", 10 + WScript.Quit +End If + +Set oShell = CreateObject("WScript.Shell") +Set oEnvSystem = oShell.Environment("SYSTEM") +Set oFS = CreateObject("Scripting.FileSystemObject") + +Dim sBasePath, sJarFile +sBasePath = oFS.GetParentFolderName(oFS.GetParentFolderName(WScript.ScriptFullName)) +sJarFile = sBasePath & "\ja-netfilter.jar" + +If Not oFS.FileExists(sJarFile) Then + MsgBox "ja-netfilter.jar not found", vbOKOnly Or vbCritical + WScript.Quit -1 +End If + +MsgBox "It may take a few seconds to execute this script." & vbCrLf & vbCrLf & "Click 'OK' button and wait for the prompt of 'Done.' to pop up!" + +Dim sEnvKey, sEnvVal, aJBProducts +aJBProducts = Array("idea", "clion", "phpstorm", "goland", "pycharm", "webstorm", "webide", "rider", "datagrip", "rubymine", "appcode", "dataspell", "gateway", "jetbrains_client", "jetbrainsclient", "studio", "devecostudio") + +Set re = New RegExp +re.Global = True +re.IgnoreCase = True +re.Pattern = "^\-javaagent:.*[\/\\]ja\-netfilter\.jar.*" + +Sub RemoveEnv(env) + On Error Resume Next + + For Each sPrd in aJBProducts + sEnvKey = UCase(sPrd) & "_VM_OPTIONS" + sEnvVal = oShell.ExpandEnvironmentStrings("%" & sEnvKey & "%") + If sEnvVal <> ("%" & sEnvKey & "%") Then + env.Remove(sEnvKey) + End If + Next +End Sub + +RemoveEnv oShell.Environment("USER") + +Dim sVmOptionsFile +For Each sPrd in aJBProducts + sEnvKey = UCase(sPrd) & "_VM_OPTIONS" + sVmOptionsFile = sBasePath & "\vmoptions\" & sPrd & ".vmoptions" + If oFS.FileExists(sVmOptionsFile) Then + ProcessVmOptions sVmOptionsFile + oEnvSystem(sEnvKey) = sVmOptionsFile + End If +Next + +Sub ProcessVmOptions(ByVal file) + Dim sLine, sNewContent, bMatch + Set oFile = oFS.OpenTextFile(file, 1, 0) + + sNewContent = "" + Do Until oFile.AtEndOfStream + sLine = oFile.ReadLine + bMatch = re.Test(sLine) + If Not bMatch Then + sNewContent = sNewContent & sLine & vbLf + End If + Loop + oFile.Close + + sNewContent = sNewContent & "-javaagent:" & sJarFile & "=jetbrains" + Set oFile = oFS.OpenTextFile(file, 2, 0) + oFile.Write sNewContent + oFile.Close +End Sub + +MsgBox "Done." diff --git a/jetbra/scripts/install-current-user.vbs b/jetbra/scripts/install-current-user.vbs new file mode 100644 index 0000000..9939d9e --- /dev/null +++ b/jetbra/scripts/install-current-user.vbs @@ -0,0 +1,54 @@ +Set oShell = CreateObject("WScript.Shell") +Set oEnv = oShell.Environment("USER") +Set oFS = CreateObject("Scripting.FileSystemObject") + +Dim sEnvKey, sEnvVal, aJBProducts +aJBProducts = Array("idea", "clion", "phpstorm", "goland", "pycharm", "webstorm", "webide", "rider", "datagrip", "rubymine", "appcode", "dataspell", "gateway", "jetbrains_client", "jetbrainsclient", "studio", "devecostudio") + +Set re = New RegExp +re.Global = True +re.IgnoreCase = True +re.Pattern = "^\-javaagent:.*[\/\\]ja\-netfilter\.jar.*" + +Dim sBasePath, sJarFile +sBasePath = oFS.GetParentFolderName(oShell.CurrentDirectory) +sJarFile = sBasePath & "\ja-netfilter.jar" + +If Not oFS.FileExists(sJarFile) Then + MsgBox "ja-netfilter.jar not found", vbOKOnly Or vbCritical + WScript.Quit -1 +End If + +MsgBox "It may take a few seconds to execute this script." & vbCrLf & vbCrLf & "Click 'OK' button and wait for the prompt of 'Done.' to pop up!" + +Dim sVmOptionsFile +For Each sPrd in aJBProducts + sEnvKey = UCase(sPrd) & "_VM_OPTIONS" + sVmOptionsFile = sBasePath & "\vmoptions\" & sPrd & ".vmoptions" + If oFS.FileExists(sVmOptionsFile) Then + ProcessVmOptions sVmOptionsFile + oEnv(sEnvKey) = sVmOptionsFile + End If +Next + +Sub ProcessVmOptions(ByVal file) + Dim sLine, sNewContent, bMatch + Set oFile = oFS.OpenTextFile(file, 1, 0) + + sNewContent = "" + Do Until oFile.AtEndOfStream + sLine = oFile.ReadLine + bMatch = re.Test(sLine) + If Not bMatch Then + sNewContent = sNewContent & sLine & vbLf + End If + Loop + oFile.Close + + sNewContent = sNewContent & "-javaagent:" & sJarFile & "=jetbrains" + Set oFile = oFS.OpenTextFile(file, 2, 0) + oFile.Write sNewContent + oFile.Close +End Sub + +MsgBox "Done." diff --git a/jetbra/scripts/install.sh b/jetbra/scripts/install.sh new file mode 100755 index 0000000..5593462 --- /dev/null +++ b/jetbra/scripts/install.sh @@ -0,0 +1,115 @@ +#!/bin/sh + +set -e + +OS_NAME=$(uname -s) +JB_PRODUCTS="idea clion phpstorm goland pycharm webstorm webide rider datagrip rubymine appcode dataspell gateway jetbrains_client jetbrainsclient studio devecostudio" + +BASE_PATH=$(dirname $( + cd $(dirname "$0") + pwd +)) + +JAR_FILE_PATH="${BASE_PATH}/ja-netfilter.jar" + +if [ ! -f "${JAR_FILE_PATH}" ]; then + echo 'ja-netfilter.jar not found' + exit -1 +fi + +KDE_ENV_DIR="${HOME}/.config/plasma-workspace/env" +LAUNCH_AGENTS_DIR="${HOME}/Library/LaunchAgents" + +PROFILE_PATH="${HOME}/.profile" +ZSH_PROFILE_PATH="${HOME}/.zshrc" +PLIST_PATH="${LAUNCH_AGENTS_DIR}/jetbrains.vmoptions.plist" + +if [ $OS_NAME = "Darwin" ]; then + BASH_PROFILE_PATH="${HOME}/.bash_profile" + + mkdir -p "${LAUNCH_AGENTS_DIR}" + echo 'Labeljetbrains.vmoptionsProgramArgumentssh-c' >"${PLIST_PATH}" +else + BASH_PROFILE_PATH="${HOME}/.bashrc" + mkdir -p "${KDE_ENV_DIR}" +fi + +touch "${PROFILE_PATH}" +touch "${BASH_PROFILE_PATH}" +touch "${ZSH_PROFILE_PATH}" + +MY_VMOPTIONS_SHELL_NAME="jetbrains.vmoptions.sh" +MY_VMOPTIONS_SHELL_FILE="${HOME}/.${MY_VMOPTIONS_SHELL_NAME}" +echo '#!/bin/sh' >"${MY_VMOPTIONS_SHELL_FILE}" + +EXEC_LINE='___MY_VMOPTIONS_SHELL_FILE="${HOME}/.jetbrains.vmoptions.sh"; if [ -f "${___MY_VMOPTIONS_SHELL_FILE}" ]; then . "${___MY_VMOPTIONS_SHELL_FILE}"; fi' + +for PRD in $JB_PRODUCTS; do + VM_FILE_PATH="${BASE_PATH}/vmoptions/${PRD}.vmoptions" + if [ ! -f "${VM_FILE_PATH}" ]; then + continue + fi + + if [ $OS_NAME = "Darwin" ]; then + sed -i '' '/^\-javaagent:.*[\/\\]ja\-netfilter\.jar.*/d' "${VM_FILE_PATH}" + else + sed -i '/^\-javaagent:.*[\/\\]ja\-netfilter\.jar.*/d' "${VM_FILE_PATH}" + fi + + echo "-javaagent:${JAR_FILE_PATH}=jetbrains" >>"${VM_FILE_PATH}" + + ENV_NAME=$(echo $PRD | tr '[a-z]' '[A-Z]')"_VM_OPTIONS" + echo "export ${ENV_NAME}=\"${VM_FILE_PATH}\"" >>"${MY_VMOPTIONS_SHELL_FILE}" + + if [ $OS_NAME = "Darwin" ]; then + launchctl setenv "${ENV_NAME}" "${VM_FILE_PATH}" + echo "launchctl setenv \"${ENV_NAME}\" \"${VM_FILE_PATH}\"" >>"${PLIST_PATH}" + fi +done + +if [ $OS_NAME = "Darwin" ]; then + sed -i '' '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${PROFILE_PATH}" >/dev/null 2>&1 + sed -i '' '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${BASH_PROFILE_PATH}" >/dev/null 2>&1 + sed -i '' '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${ZSH_PROFILE_PATH}" >/dev/null 2>&1 + + echo 'RunAtLoad' >>"${PLIST_PATH}" +else + sed -i '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${PROFILE_PATH}" >/dev/null 2>&1 + sed -i '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${BASH_PROFILE_PATH}" >/dev/null 2>&1 + sed -i '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${ZSH_PROFILE_PATH}" >/dev/null 2>&1 +fi + +echo "${EXEC_LINE}" >>"${PROFILE_PATH}" +echo "${EXEC_LINE}" >>"${BASH_PROFILE_PATH}" +echo "${EXEC_LINE}" >>"${ZSH_PROFILE_PATH}" + +if [ $OS_NAME = "Darwin" ]; then + echo 'done. the "kill Dock" command can fix the crash issue.' +else + ln -sf "${MY_VMOPTIONS_SHELL_FILE}" "${KDE_ENV_DIR}/${MY_VMOPTIONS_SHELL_NAME}" + echo "done. you'd better log off first!" +fi + +#!/bin/bash + +# 计算脚本的基础路径 +BASE_PATH=$(dirname $( + cd $(dirname "$0") + pwd +)) + +# 目标路径(使用绝对路径) +TARGET_PATH="$HOME/linux-clion/linux2022-2023/ja-netfilter.jar" +TARGET_DIR="$(dirname "$TARGET_PATH")" # 获取目标文件的目录 + +# 检查源文件是否存在 +if [ -f "$BASE_PATH/ja-netfilter.jar" ]; then + # 创建目标目录(如果不存在) + mkdir -p "$TARGET_DIR" + + # 拷贝文件 + cp "$BASE_PATH/ja-netfilter.jar" "$TARGET_PATH" + echo "File copied to $TARGET_PATH" +else + echo "File $BASE_PATH/ja-netfilter.jar does not exist." +fi diff --git a/jetbra/scripts/uninstall-all-users.vbs b/jetbra/scripts/uninstall-all-users.vbs new file mode 100644 index 0000000..e1be5e0 --- /dev/null +++ b/jetbra/scripts/uninstall-all-users.vbs @@ -0,0 +1,28 @@ +If Not WScript.Arguments.Named.Exists("elevate") Then + CreateObject("Shell.Application").ShellExecute WScript.FullName, """" & WScript.ScriptFullName & """ /elevate", "", "runas", 10 + WScript.Quit +End If + +MsgBox "It may take a few seconds to execute this script." & vbCrLf & vbCrLf & "Click 'OK' button and wait for the prompt of 'Done.' to pop up!" + +Sub RemoveEnv(env) + On Error Resume Next + + Dim sEnvKey, sEnvVal, aJBProducts + aJBProducts = Array("idea", "clion", "phpstorm", "goland", "pycharm", "webstorm", "webide", "rider", "datagrip", "rubymine", "appcode", "dataspell", "gateway", "jetbrains_client", "jetbrainsclient", "studio", "devecostudio") + + For Each sPrd in aJBProducts + sEnvKey = UCase(sPrd) & "_VM_OPTIONS" + sEnvVal = oShell.ExpandEnvironmentStrings("%" & sEnvKey & "%") + If sEnvVal <> ("%" & sEnvKey & "%") Then + env.Remove(sEnvKey) + End If + Next +End Sub + +Set oShell = CreateObject("WScript.Shell") + +RemoveEnv oShell.Environment("USER") +RemoveEnv oShell.Environment("SYSTEM") + +MsgBox "Done." diff --git a/jetbra/scripts/uninstall-current-user.vbs b/jetbra/scripts/uninstall-current-user.vbs new file mode 100644 index 0000000..34be3f1 --- /dev/null +++ b/jetbra/scripts/uninstall-current-user.vbs @@ -0,0 +1,17 @@ +Set oShell = CreateObject("WScript.Shell") +Set oEnv = oShell.Environment("USER") + +Dim sEnvKey, sEnvVal, aJBProducts +aJBProducts = Array("idea", "clion", "phpstorm", "goland", "pycharm", "webstorm", "webide", "rider", "datagrip", "rubymine", "appcode", "dataspell", "gateway", "jetbrains_client", "jetbrainsclient", "studio", "devecostudio") + +MsgBox "It may take a few seconds to execute this script." & vbCrLf & vbCrLf & "Click 'OK' button and wait for the prompt of 'Done.' to pop up!" + +For Each sPrd in aJBProducts + sEnvKey = UCase(sPrd) & "_VM_OPTIONS" + sEnvVal = oShell.ExpandEnvironmentStrings("%" & sEnvKey & "%") + If sEnvVal <> ("%" & sEnvKey & "%") Then + oEnv.Remove(sEnvKey) + End If +Next + +MsgBox "Done." diff --git a/jetbra/scripts/uninstall.sh b/jetbra/scripts/uninstall.sh new file mode 100644 index 0000000..4de2fce --- /dev/null +++ b/jetbra/scripts/uninstall.sh @@ -0,0 +1,50 @@ +#!/bin/sh + +set -e + +OS_NAME=$(uname -s) +JB_PRODUCTS="idea clion phpstorm goland pycharm webstorm webide rider datagrip rubymine appcode dataspell gateway jetbrains_client jetbrainsclient studio devecostudio" + +KDE_ENV_DIR="${HOME}/.config/plasma-workspace/env" + +PROFILE_PATH="${HOME}/.profile" +ZSH_PROFILE_PATH="${HOME}/.zshrc" +PLIST_PATH="${HOME}/Library/LaunchAgents/jetbrains.vmoptions.plist" + +if [ $OS_NAME = "Darwin" ]; then + BASH_PROFILE_PATH="${HOME}/.bash_profile" +else + BASH_PROFILE_PATH="${HOME}/.bashrc" +fi + +touch "${PROFILE_PATH}" +touch "${BASH_PROFILE_PATH}" +touch "${ZSH_PROFILE_PATH}" + +MY_VMOPTIONS_SHELL_NAME="jetbrains.vmoptions.sh" +MY_VMOPTIONS_SHELL_FILE="${HOME}/.${MY_VMOPTIONS_SHELL_NAME}" + +rm -rf "${MY_VMOPTIONS_SHELL_FILE}" + +if [ $OS_NAME = "Darwin" ]; then + for PRD in $JB_PRODUCTS; do + ENV_NAME=$(echo $PRD | tr '[a-z]' '[A-Z]')"_VM_OPTIONS" + + launchctl unsetenv "${ENV_NAME}" + done + + rm -rf "${PLIST_PATH}" + + sed -i '' '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${PROFILE_PATH}" >/dev/null 2>&1 + sed -i '' '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${BASH_PROFILE_PATH}" >/dev/null 2>&1 + sed -i '' '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${ZSH_PROFILE_PATH}" >/dev/null 2>&1 + + echo 'done.' +else + sed -i '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${PROFILE_PATH}" >/dev/null 2>&1 + sed -i '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${BASH_PROFILE_PATH}" >/dev/null 2>&1 + sed -i '/___MY_VMOPTIONS_SHELL_FILE="${HOME}\/\.jetbrains\.vmoptions\.sh"; if /d' "${ZSH_PROFILE_PATH}" >/dev/null 2>&1 + + rm -rf "${KDE_ENV_DIR}/${MY_VMOPTIONS_SHELL_NAME}" + echo "done. you'd better log off first!" +fi diff --git a/jetbra/sha1sum.txt b/jetbra/sha1sum.txt new file mode 100644 index 0000000..47b04f5 --- /dev/null +++ b/jetbra/sha1sum.txt @@ -0,0 +1,33 @@ +2a723c2ef30be4a5c167c6639bf9ec0b9c7e7ca2 ja-netfilter.jar +06777a6f603fa3c4eb83b4a9eca76331e40006f4 README.pdf +67c0745960d407921cf8f65f4e1417aaf9f2704b readme.txt +4e8693b5a7a3837cf7f6db0c4f1316f376d34721 plugins-jetbrains/dns.jar +729d00e4fa04ca49c00b5b6aa60706dfadd5644e plugins-jetbrains/hideme.jar +26ee7577969265ff77a7fd786bcb707fe21a3d6b plugins-jetbrains/power.jar +b1bebbee8d98218db5794f596001b8b7427ae0c7 plugins-jetbrains/url.jar +84fc47685c4768eff051361777664bb764d5b844 config-jetbrains/dns.conf +0ce951cdf37a178c18440e85a0f3806ed2d09415 config-jetbrains/power.conf +0b219cc137a185439fb9bd99d85b8fe320967507 config-jetbrains/url.conf +46194b9c7ac66a5446afbcf172ffd7743b53da44 scripts/install-all-users.vbs +6825df9e07cf9febf0f9d2ff812fdc261f7ba72c scripts/install-current-user.vbs +32eb21a4fd2a0ae3ead868dd550d30b64409a883 scripts/install.sh +e8ec2bd8883202b9e44783ca7b5831c0df35d4db scripts/uninstall-all-users.vbs +f3a9237f31085c7945e41930eb11ac5c86abfc4d scripts/uninstall-current-user.vbs +437f66132747f12edaa30d81052b08f8ce99e7ed scripts/uninstall.sh +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/appcode.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/clion.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/datagrip.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/dataspell.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/devecostudio.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/gateway.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/goland.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/idea.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/jetbrains_client.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/jetbrainsclient.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/phpstorm.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/pycharm.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/rider.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/rubymine.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/studio.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/webide.vmoptions +1a3698a91fbf5817433023a147adb0c715066b9f vmoptions/webstorm.vmoptions diff --git a/jetbra/vmoptions/appcode.vmoptions b/jetbra/vmoptions/appcode.vmoptions new file mode 100644 index 0000000..cc5c66c --- /dev/null +++ b/jetbra/vmoptions/appcode.vmoptions @@ -0,0 +1,22 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + +-javaagent:/home/ld/UbuntuAutoScript/jetbra/ja-netfilter.jar=jetbrains diff --git a/jetbra/vmoptions/aqua.vmoptions b/jetbra/vmoptions/aqua.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra/vmoptions/aqua.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra/vmoptions/clion.vmoptions b/jetbra/vmoptions/clion.vmoptions new file mode 100644 index 0000000..cc5c66c --- /dev/null +++ b/jetbra/vmoptions/clion.vmoptions @@ -0,0 +1,22 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + +-javaagent:/home/ld/UbuntuAutoScript/jetbra/ja-netfilter.jar=jetbrains diff --git a/jetbra/vmoptions/datagrip.vmoptions b/jetbra/vmoptions/datagrip.vmoptions new file mode 100644 index 0000000..cc5c66c --- /dev/null +++ b/jetbra/vmoptions/datagrip.vmoptions @@ -0,0 +1,22 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + +-javaagent:/home/ld/UbuntuAutoScript/jetbra/ja-netfilter.jar=jetbrains diff --git a/jetbra/vmoptions/dataspell.vmoptions b/jetbra/vmoptions/dataspell.vmoptions new file mode 100644 index 0000000..cc5c66c --- /dev/null +++ b/jetbra/vmoptions/dataspell.vmoptions @@ -0,0 +1,22 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + +-javaagent:/home/ld/UbuntuAutoScript/jetbra/ja-netfilter.jar=jetbrains diff --git a/jetbra/vmoptions/devecostudio.vmoptions b/jetbra/vmoptions/devecostudio.vmoptions new file mode 100644 index 0000000..cc5c66c --- /dev/null +++ b/jetbra/vmoptions/devecostudio.vmoptions @@ -0,0 +1,22 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + +-javaagent:/home/ld/UbuntuAutoScript/jetbra/ja-netfilter.jar=jetbrains diff --git a/jetbra/vmoptions/gateway.vmoptions b/jetbra/vmoptions/gateway.vmoptions new file mode 100644 index 0000000..cc5c66c --- /dev/null +++ b/jetbra/vmoptions/gateway.vmoptions @@ -0,0 +1,22 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + +-javaagent:/home/ld/UbuntuAutoScript/jetbra/ja-netfilter.jar=jetbrains diff --git a/jetbra/vmoptions/goland.vmoptions b/jetbra/vmoptions/goland.vmoptions new file mode 100644 index 0000000..cc5c66c --- /dev/null +++ b/jetbra/vmoptions/goland.vmoptions @@ -0,0 +1,22 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + +-javaagent:/home/ld/UbuntuAutoScript/jetbra/ja-netfilter.jar=jetbrains diff --git a/jetbra/vmoptions/idea.vmoptions b/jetbra/vmoptions/idea.vmoptions new file mode 100644 index 0000000..cc5c66c --- /dev/null +++ b/jetbra/vmoptions/idea.vmoptions @@ -0,0 +1,22 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + +-javaagent:/home/ld/UbuntuAutoScript/jetbra/ja-netfilter.jar=jetbrains diff --git a/jetbra/vmoptions/jetbrains_client.vmoptions b/jetbra/vmoptions/jetbrains_client.vmoptions new file mode 100644 index 0000000..cc5c66c --- /dev/null +++ b/jetbra/vmoptions/jetbrains_client.vmoptions @@ -0,0 +1,22 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + +-javaagent:/home/ld/UbuntuAutoScript/jetbra/ja-netfilter.jar=jetbrains diff --git a/jetbra/vmoptions/jetbrainsclient.vmoptions b/jetbra/vmoptions/jetbrainsclient.vmoptions new file mode 100644 index 0000000..cc5c66c --- /dev/null +++ b/jetbra/vmoptions/jetbrainsclient.vmoptions @@ -0,0 +1,22 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + +-javaagent:/home/ld/UbuntuAutoScript/jetbra/ja-netfilter.jar=jetbrains diff --git a/jetbra/vmoptions/phpstorm.vmoptions b/jetbra/vmoptions/phpstorm.vmoptions new file mode 100644 index 0000000..cc5c66c --- /dev/null +++ b/jetbra/vmoptions/phpstorm.vmoptions @@ -0,0 +1,22 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + +-javaagent:/home/ld/UbuntuAutoScript/jetbra/ja-netfilter.jar=jetbrains diff --git a/jetbra/vmoptions/pycharm.vmoptions b/jetbra/vmoptions/pycharm.vmoptions new file mode 100644 index 0000000..cc5c66c --- /dev/null +++ b/jetbra/vmoptions/pycharm.vmoptions @@ -0,0 +1,22 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + +-javaagent:/home/ld/UbuntuAutoScript/jetbra/ja-netfilter.jar=jetbrains diff --git a/jetbra/vmoptions/rider.vmoptions b/jetbra/vmoptions/rider.vmoptions new file mode 100644 index 0000000..cc5c66c --- /dev/null +++ b/jetbra/vmoptions/rider.vmoptions @@ -0,0 +1,22 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + +-javaagent:/home/ld/UbuntuAutoScript/jetbra/ja-netfilter.jar=jetbrains diff --git a/jetbra/vmoptions/rubymine.vmoptions b/jetbra/vmoptions/rubymine.vmoptions new file mode 100644 index 0000000..cc5c66c --- /dev/null +++ b/jetbra/vmoptions/rubymine.vmoptions @@ -0,0 +1,22 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + +-javaagent:/home/ld/UbuntuAutoScript/jetbra/ja-netfilter.jar=jetbrains diff --git a/jetbra/vmoptions/rustrover.vmoptions b/jetbra/vmoptions/rustrover.vmoptions new file mode 100644 index 0000000..32beca5 --- /dev/null +++ b/jetbra/vmoptions/rustrover.vmoptions @@ -0,0 +1,21 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + diff --git a/jetbra/vmoptions/studio.vmoptions b/jetbra/vmoptions/studio.vmoptions new file mode 100644 index 0000000..cc5c66c --- /dev/null +++ b/jetbra/vmoptions/studio.vmoptions @@ -0,0 +1,22 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + +-javaagent:/home/ld/UbuntuAutoScript/jetbra/ja-netfilter.jar=jetbrains diff --git a/jetbra/vmoptions/webide.vmoptions b/jetbra/vmoptions/webide.vmoptions new file mode 100644 index 0000000..cc5c66c --- /dev/null +++ b/jetbra/vmoptions/webide.vmoptions @@ -0,0 +1,22 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + +-javaagent:/home/ld/UbuntuAutoScript/jetbra/ja-netfilter.jar=jetbrains diff --git a/jetbra/vmoptions/webstorm.vmoptions b/jetbra/vmoptions/webstorm.vmoptions new file mode 100644 index 0000000..cc5c66c --- /dev/null +++ b/jetbra/vmoptions/webstorm.vmoptions @@ -0,0 +1,22 @@ +-Xms128m +-Xmx1024m +-XX:ReservedCodeCacheSize=512m +-XX:+IgnoreUnrecognizedVMOptions +-XX:+UseG1GC +-XX:SoftRefLRUPolicyMSPerMB=50 +-XX:CICompilerCount=2 +-XX:+HeapDumpOnOutOfMemoryError +-XX:-OmitStackTraceInFastThrow +-ea +-Dsun.io.useCanonCaches=false +-Djdk.http.auth.tunneling.disabledSchemes="" +-Djdk.attach.allowAttachSelf=true +-Djdk.module.illegalAccess.silent=true +-Dkotlinx.coroutines.debug=off +-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log +-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof + +--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED +--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED + +-javaagent:/home/ld/UbuntuAutoScript/jetbra/ja-netfilter.jar=jetbrains diff --git "a/jetbra/\346\277\200\346\264\273\347\240\201.txt" "b/jetbra/\346\277\200\346\264\273\347\240\201.txt" new file mode 100644 index 0000000..89ed409 --- /dev/null +++ "b/jetbra/\346\277\200\346\264\273\347\240\201.txt" @@ -0,0 +1,63 @@ +jetbra(ja-netfilter-all) 2023.x (2023/09/14) +JetBrains产品永久激活插件,支持激活 2023.2.x 或后续小版本 +可激活 Code With Me 插件及最大程度激活市场所有付费插件! + +============= +公众号【小油柑软件测试面试资源】 +============= + +注:jetbra路径不要含空格,如有其它破解插件要移除! + +1)将永久激活插件 jetbra(ja-netfilter-all) 放固定位置 +例如:D:\jetbra\ja-netfilter.jar + +2)右键以管理员身份运行脚本自动配置VM自定义选项 +jetbra\script\install-all-users.vbs + +3)启动JetBrains产品,许可证激活选择激活码方式(Activate code) +jetbra插件JetBrains产品激活码页面主站新地址 https://3.jetbra.in + +JetBrains部分常用产品最新激活码,需要配合jetbra破解插件使用。 + +【IntelliJ IDEA 2023.2.x】 +29VRVXKXEQ-eyJsaWNlbnNlSWQiOiIyOVZSVlhLWEVRIiwibGljZW5zZWVOYW1lIjoiZ3VyZ2xlcyB0dW1ibGVzIiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IiIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiSUkiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJQQ1dNUCIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiUFNJIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJQREIiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOnRydWV9XSwibWV0YWRhdGEiOiIwMTIwMjMwOTE0UFNBWDAwMDAwNSIsImhhc2giOiJUUklBTDoxNjQ5MDU4NzE5IiwiZ3JhY2VQZXJpb2REYXlzIjo3LCJhdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlLCJpc0F1dG9Qcm9sb25nYXRlZCI6ZmFsc2V9-YKRuMTrLQcfyWisYF1q6RhCN+Ub13VOCayGGc6tklGA97oxRM1HCIR0oI5yfTjL7UQYDbNMokT0U0ZQ2obYaUx+MMf7+3FfUYp5dYzP7G9YrEehrGWQ4O8ENrDLDAClB8o8jud9cafW9WTx9hDNd9j2FfjwSaRibClwGBRdO5fSkWlKGhx4tV0K9IyotNYDQzT1QCDRWSxHYGqfDAQI2k+ZAqzNEHValupSM3TKw813kFGKIQndMfw57B6uMzgN6PvuuLpBlghdO3imrgKYj0Q59JYbuXRUpHhPnNLY1XmewdlfcJkvTiRwueCPMNEW/CQEh8X/Als92WCr2H3uFRA==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + + +【PhpStorm 2023.2.x】 +NKODKLY1H7-eyJsaWNlbnNlSWQiOiJOS09ES0xZMUg3IiwibGljZW5zZWVOYW1lIjoiZ3VyZ2xlcyB0dW1ibGVzIiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IiIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiUFMiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJQQ1dNUCIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiUFNJIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjp0cnVlfV0sIm1ldGFkYXRhIjoiMDEyMDIzMDkxNFBTQVgwMDAwMDUiLCJoYXNoIjoiVFJJQUw6LTMzNjQ2MzkzMiIsImdyYWNlUGVyaW9kRGF5cyI6NywiYXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwiaXNBdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlfQ==-BCXVtVZ06e8JxsN30wd2Yr8HWyh2nuchiAR401HnmfeEA2166BL9SEF7KhQlCAjArMs3i1qS+uIBhDedzJ3TlSLJWF3k35rbRW1++OXPTFzhaU59VauLz/VMSX0to6WfPQTxDnHJbKNZQOgKxHabFFLBY1FoxXIEeCG7UlHoW9yk6Gf6hQxJU6uqXrytF8xqvEFTt61AXWqRW48678RHzAQ47dVZ7BCrVI7tbo7QDd9uy4fVG4dRIof9+NDv+BVf07EK6lAdhEViMKZgDrvLEvdwwiZACG96Sb5PTO731qLb99TwWbkfj47d4acm3vEaKA5IuQod4lJxeh+lmpYh6w==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + +【PyCharm 2023.2.x】 +T7USULHBNF-eyJsaWNlbnNlSWQiOiJUN1VTVUxIQk5GIiwibGljZW5zZWVOYW1lIjoiZ3VyZ2xlcyB0dW1ibGVzIiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IiIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiUENXTVAiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOnRydWV9LHsiY29kZSI6IlBDIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiUFNJIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjp0cnVlfV0sIm1ldGFkYXRhIjoiMDEyMDIzMDkxNFBTQVgwMDAwMDUiLCJoYXNoIjoiVFJJQUw6NzM4MzY4NjQ0IiwiZ3JhY2VQZXJpb2REYXlzIjo3LCJhdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlLCJpc0F1dG9Qcm9sb25nYXRlZCI6ZmFsc2V9-cjtPn2BDgvquYqMu8jD//otufahQs2q1uOxdPwcb0JAeMRa3dIeZ6u8FJd2L3VFU2Qc4187i7SwjPVh5Xx/D0in47mPvPqxp2lPtaBOYaVUKRrudBf+9WC49Ggw9SyKgx2XkGF429ZHD6OSAQnzy6RxlJNc0IHS3p2B9u9aYc5vLkOYEluUBjdctPDbrhWQmuAd/1qMj/LRGZzdOcCHIems7igEjJvaDH9zukxMrTYCtya63uivmRFCqG7frptThq4UI9HhAWfEIkFbJDoneU/6MGRR+4mDL+wEuetnZ1oPgGFkTpQs/OQLjXDKQgqpaD+hu5bmyZhpaaWgrHhR1Ig==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + + +【WebStorm 2023.2.x】 +MOUGH5FKDV-eyJsaWNlbnNlSWQiOiJNT1VHSDVGS0RWIiwibGljZW5zZWVOYW1lIjoiZ3VyZ2xlcyB0dW1ibGVzIiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IiIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiUENXTVAiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOnRydWV9LHsiY29kZSI6IlBTSSIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiV1MiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOmZhbHNlfV0sIm1ldGFkYXRhIjoiMDEyMDIzMDkxNFBTQVgwMDAwMDUiLCJoYXNoIjoiVFJJQUw6LTE5MjAyMDQyODkiLCJncmFjZVBlcmlvZERheXMiOjcsImF1dG9Qcm9sb25nYXRlZCI6ZmFsc2UsImlzQXV0b1Byb2xvbmdhdGVkIjpmYWxzZX0=-SyFXaP9+YSd0DAiRk/53HYJfAGdZkg0Ulwux2wvCAxuNocmHatN53wlQch3CYJlI2vPP6iHjxjSN84p+wS8jEfJhJRyP5HZ2SW+e0DwupGhiE3OScoJ2TQ9KlWojf2XwLj6slNkVDmlvYaySi33rUB/S0ReY69KoOIjEye1S7mqaFakRHS3T1/pIbpqIeEnQGSlxhfFWg3zB0WKX10zjeEVGXz5FG/0HBYlxiKqYGoLX/XfpU/bkRQm6o2Kci0UWjh1NthmSnjFWGDMBqeoKHUrqs93R5Cus7wY2rPlFYPcqGloepWAK+3lyv2/XmW6+WQk7LH+3scTY9h0/BUXfVw==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + +【Rider 2023.2.x】 +ZWBDJRTHKV-eyJsaWNlbnNlSWQiOiJaV0JESlJUSEtWIiwibGljZW5zZWVOYW1lIjoiZ3VyZ2xlcyB0dW1ibGVzIiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IiIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiUFNJIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJSRCIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IlBEQiIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6dHJ1ZX1dLCJtZXRhZGF0YSI6IjAxMjAyMzA5MTRQU0FYMDAwMDA1IiwiaGFzaCI6IlRSSUFMOi0xNjM1MjE2NTc4IiwiZ3JhY2VQZXJpb2REYXlzIjo3LCJhdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlLCJpc0F1dG9Qcm9sb25nYXRlZCI6ZmFsc2V9-Mb+qI6ozErk6qbMtkeq7NenqveZQzdNS2YceRW1Scve7hT5n6flotCzd0x0CEi4gtuaO8OxOUfJ+4jHoieUkF1i5MRMKOy2/fxxtX9F7nYL9MEEVxrs2MqAnj6pDE++KfB2AduB5Ggs37o8X3sPpTleYZh9Xpn/glOyo19bY9p/m43/OjaKkPVD8eS2ROwnB7wFNc3wVlM9B8w500KmkrTPLb3Jnz0b8EnAj/dL6LYO+Faz1GjDRmvFsVASCDWVnZngwQ9Gq6sDBwapCjL0I4b7lKia0Q/LZ/Gkjtzid7GLMciM5T4VqiEu/8Pqki+Je7maJEQrRsETQw741A8JLPA==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + +【CLion 2023.2.x】 +N598DDQN09-eyJsaWNlbnNlSWQiOiJONTk4RERRTjA5IiwibGljZW5zZWVOYW1lIjoiZ3VyZ2xlcyB0dW1ibGVzIiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IiIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiQ0wiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJQQ1dNUCIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiUFNJIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjp0cnVlfV0sIm1ldGFkYXRhIjoiMDEyMDIzMDkxNFBTQVgwMDAwMDUiLCJoYXNoIjoiVFJJQUw6LTE0ODUyMDI1MzYiLCJncmFjZVBlcmlvZERheXMiOjcsImF1dG9Qcm9sb25nYXRlZCI6ZmFsc2UsImlzQXV0b1Byb2xvbmdhdGVkIjpmYWxzZX0=-LwjiTvOpsziVPKZPl8hT7e8zkjOlFJ75esaYYWJ9EUdOQVc9Xx2BhIFdc7jIiM/GaHEuIhZ5MeaeLeFXkfmgYZDTiVmEnlmaiO4hjwXYWmj8MfU1UnXbY4PEGyrwhNAj8aayPa5C59zvbPl0zPVgvLKYwkTDtZBg9GvBPiBLYWESRTqiCQCFggwIU1OeRoNxTUEyVK4ESlybfpcFKZ1N2j5rrfb+UNFbqDVB1k4BLnidtz0j3X5TZdDB+BXX2WmERO2WtogJkJ6HrdUBZkmeSFUDiiX2QmcpT5/V7K24LtKiLev9F3EZiEKxRfMYHwcwJr7BcC2rOmvsuKs51hXieQ==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + +【DataGrip 2023.2.x】 +6E26WZCE14-eyJsaWNlbnNlSWQiOiI2RTI2V1pDRTE0IiwibGljZW5zZWVOYW1lIjoiZ3VyZ2xlcyB0dW1ibGVzIiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IiIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiREIiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJQU0kiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOnRydWV9LHsiY29kZSI6IlBEQiIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6dHJ1ZX1dLCJtZXRhZGF0YSI6IjAxMjAyMzA5MTRQU0FYMDAwMDA1IiwiaGFzaCI6IlRSSUFMOi0yMDE0NjMyMjM1IiwiZ3JhY2VQZXJpb2REYXlzIjo3LCJhdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlLCJpc0F1dG9Qcm9sb25nYXRlZCI6ZmFsc2V9-V6xNxshWwoyNJwOrXQ3NAsVSEjxZFKTT+c52asybvhxtTKvMP0ApRwwSrhZYrxlaTeBhd5te25GXofZpBkn3/SbKmkkzFRfO0//m1rpBgeFAClJgeaG6Az2/lcLodHiM3x1amD+MJrAzg0o1rztQWOXJ4DhusfMHvqTbYKOsiUKRGyuFiKoYvgQqnvwAWAP8F8IiqKln/BlTxe9KoKi32HA5nnBhSJ66SZ5GM61t0mzgrkY3wqIe5PpJTOwn2sCo1QWs1YFABcqiCBQhC0w8HDmrdcpWJ91dYOhGim9K6IobE8xud3HGKrRS4Yo0s4p19xKkuDMYHT/rgJXK4T9XLA==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + +【RubyMine 2023.2.x】 +BSM45BHVVS-eyJsaWNlbnNlSWQiOiJCU000NUJIVlZTIiwibGljZW5zZWVOYW1lIjoiZ3VyZ2xlcyB0dW1ibGVzIiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IiIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiUENXTVAiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOnRydWV9LHsiY29kZSI6IlBTSSIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiUk0iLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOmZhbHNlfV0sIm1ldGFkYXRhIjoiMDEyMDIzMDkxNFBTQVgwMDAwMDUiLCJoYXNoIjoiVFJJQUw6LTYxMzUyMDMxNCIsImdyYWNlUGVyaW9kRGF5cyI6NywiYXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwiaXNBdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlfQ==-O3mjZIYQuRoGrG821FiC58TGd5EQgmzsXqdv5tfw56Ycglke8GUZ4FLObNPB/up4UdQRqYSppjITQScB2gZEBRVA45fUPnxrwqiKjec2nD82s8x/BE+jPMFokkUx/reOjNx+rYZ/gwbaB4T929DCBshRVPBibaZnN0KfAmUzegKArIY5BeH1pVqr98VAkLdloXgu6jMMKVm3ZR6mjyaWAV3EFzTP1QRsKRP0mBeYHJzSBEt2Ghp0ee1ygYFz9X4sqaCcNtaxxDNnsJfafgTJkRXEDDND7rygP7WzgqONKTc6Mw0UYdkxiUYf+LNKocnVTcsCZYT476Vd3K9p47GhUA==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + +【GoLand 2023.2.x】 +7GC5726T07-eyJsaWNlbnNlSWQiOiI3R0M1NzI2VDA3IiwibGljZW5zZWVOYW1lIjoiZ3VyZ2xlcyB0dW1ibGVzIiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IiIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiUENXTVAiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOnRydWV9LHsiY29kZSI6IkdPIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiUFNJIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjp0cnVlfV0sIm1ldGFkYXRhIjoiMDEyMDIzMDkxNFBTQVgwMDAwMDUiLCJoYXNoIjoiVFJJQUw6MTgwNTI0OTc5MyIsImdyYWNlUGVyaW9kRGF5cyI6NywiYXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwiaXNBdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlfQ==-J1Q4R07G0iNZjbMTc0vLPT7NszraBLfLcYiscK+h1wq5EPTDgwgnFyU6Lu3rGFmHLETmcsIyQNbF6yXItJN4ccXgWYxWhezALkQcAnoH7wMOn5WVcKkdPVzN9ZiV9LC+VOJ8GFwh6PwBkxniyF/JIbxFYOLa71Yl0ivU+ASFpqtSKfSajO14O76J8HplVeA9cbhQdCKzZ0QkOfzVoREbgUhr68TkGW+j5wjAcGbcx+TPkQ6FQ81+kF9pfBcp7lTt3dWUzEmtTVjPrPbUYkLCKozfX+22GBZu5s3lh8lbj83lY146ifHf383LWrjwnQTJ9TDtPd7jMSHX5Kbfi71gMQ==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + +【DataSpell 2023.2.x】 +9BUS8OPT9R-eyJsaWNlbnNlSWQiOiI5QlVTOE9QVDlSIiwibGljZW5zZWVOYW1lIjoiZ3VyZ2xlcyB0dW1ibGVzIiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IiIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiRFMiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJQU0kiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOnRydWV9LHsiY29kZSI6IlBEQiIsImZhbGxiYWNrRGF0ZSI6IjIwMjYtMDktMTQiLCJwYWlkVXBUbyI6IjIwMjYtMDktMTQiLCJleHRlbmRlZCI6dHJ1ZX1dLCJtZXRhZGF0YSI6IjAxMjAyMzA5MTRQU0FYMDAwMDA1IiwiaGFzaCI6IlRSSUFMOi01MTAyNjI5OCIsImdyYWNlUGVyaW9kRGF5cyI6NywiYXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwiaXNBdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlfQ==-Y6gtFIc1wTpgik7wTLxLU/GXujGiWvRPFje7W3+ErS7+GDV4+d6v7N/PAl2vAfa5bjISEe8by5BP/ZkRuE5f5+JP+nefnJzsF1/mz8jNiokjDiXvR9Ju6QUWEfuKX9FiTY6MnsoVkmnrrIxte+Dla7XrzdGDnoYbO+sgRjEMQbppyPemH16OS9ccSsxhGcRsyxY6UtyOCUsPfJ5c+M9flZHz91Tbc9mPSSBVaAg0qsy9wZPVRdYQC1Qwt4behN7q8bQBYMVikblCUUtNkE1sS9sTjHJeYN4RMuMHC/b8s3DXL87NRYc7y5zPlgSClNRtaMTZXwDCReP9hvoR4EabEw==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + + +【dotCover 2023.2.x】 +ZBS99ARUD2-eyJsaWNlbnNlSWQiOiJaQlM5OUFSVUQyIiwibGljZW5zZWVOYW1lIjoiZ3VyZ2xlcyB0dW1ibGVzIiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IiIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiREMiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOmZhbHNlfV0sIm1ldGFkYXRhIjoiMDEyMDIzMDkxNFBTQVgwMDAwMDUiLCJoYXNoIjoiVFJJQUw6MTEzMzU0MjgzNCIsImdyYWNlUGVyaW9kRGF5cyI6NywiYXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwiaXNBdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlfQ==-VXGe3blHDiiBDw7VaHTZsAtNjvOoNF3KogEinSTve2kyJNSn+kQImEljk4MP/YCsUcmtLRZrMIMlhHwiTIqPa/T7+7yCIjTKIePY4P1nTIqqD1K44PZPY6BHPx/oyXsdSruUYZI5Sq85w4h4PqI4z4kdhNAGwR7/E7E9V+eQYeqyXT2iwJ0Bjv/Pty7ggA2lpQB7YKAdJY25/JOQ9XSvA0YZFdZ6bncPgjtr9b7cHit3kiI7dY47wZCaw1ujC7M540EGC8W6CGrI8RWZtjpj98osQInlP5GSBbugJ0dPjvXU6RljMuBcr2PGj2dvYOG90Ds2UhXOReMifDJzVzbwOg==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + +【dotTrace 2023.2.x】 +7RV2S35R9X-eyJsaWNlbnNlSWQiOiI3UlYyUzM1UjlYIiwibGljZW5zZWVOYW1lIjoiZ3VyZ2xlcyB0dW1ibGVzIiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IiIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiRFBOIiwiZmFsbGJhY2tEYXRlIjoiMjAyNi0wOS0xNCIsInBhaWRVcFRvIjoiMjAyNi0wOS0xNCIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiRFAiLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOnRydWV9XSwibWV0YWRhdGEiOiIwMTIwMjMwOTE0UFNBWDAwMDAwNSIsImhhc2giOiJUUklBTDotMjA5MzIwMjY1MSIsImdyYWNlUGVyaW9kRGF5cyI6NywiYXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwiaXNBdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlfQ==-EyP0EnGOaNwmG0u7DUSfr3e1xJ8hFLyn8Dpzw1z+ZFSBcM76Yao1qYM+vIZ98Z17RebmqmUV1epDV6NwkfMsRaVulPE/xxSHdMak0ifPKsvrL+IoYseiH8zCXCIK+S8bY/67O4Raf61ldUMqs+IJt5oA1MV2q2znZo7vzZg6z6E8xLAI9PG90Cd7/4mCJl1thV9ZqX+z9qDiB2pnQXpsYa3dQb3vkTq499YXzAu7mm4s7xHGSWUgGRc2kguOH2jwLUuqAaK9oR7aySTTVXlCrr/1FtzjgS2vtvImkg3wgyF3u44u4qjv5yqdzYZFXMg/lUk2Xg7dtpKTG5f0n0U3cA==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD + + + 【dotMemory 2023.2.x】 + HXJSRGZ98Z-eyJsaWNlbnNlSWQiOiJIWEpTUkdaOThaIiwibGljZW5zZWVOYW1lIjoiZ3VyZ2xlcyB0dW1ibGVzIiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IiIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiRE0iLCJmYWxsYmFja0RhdGUiOiIyMDI2LTA5LTE0IiwicGFpZFVwVG8iOiIyMDI2LTA5LTE0IiwiZXh0ZW5kZWQiOmZhbHNlfV0sIm1ldGFkYXRhIjoiMDEyMDIzMDkxNFBTQVgwMDAwMDUiLCJoYXNoIjoiVFJJQUw6LTE1MzQxMTg0MTIiLCJncmFjZVBlcmlvZERheXMiOjcsImF1dG9Qcm9sb25nYXRlZCI6ZmFsc2UsImlzQXV0b1Byb2xvbmdhdGVkIjpmYWxzZX0=-KjTWFiazmCpRfjwhFWiqwqDmA2HZfnWP6AspuL8bsDQUfMuE4neMSBSB7gw3ZFO1ej4jCbL/BKy0ptX+kmm/3XdKCqtA3GYr3+4tdD5i02XlAMoo6N3wlIQtgGcjftDcq4bvMxz2AjGvJmpdKo9/snyvAVGH4CV4kksKYYmWDfglNYY70G+oPb0o3F5v4c6rJ9zd7Q5yHyuC8rQiQoCefHTDSs+piKAv+8fELm8ua406hQ01UHTYUUQizVnvRDhCWEDAoAmLYy9HpknAVtSOwsikWFCXLdVP9N1YhXznrSnBBuRz26FHQ/l5EjHR18TrQLro96Uq1gYjEqS+QVZjLw==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABKaDfYJk51mtYwUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD diff --git a/netease-cloud-music_deb.sh b/netease-cloud-music_deb.sh new file mode 100644 index 0000000..d05f462 --- /dev/null +++ b/netease-cloud-music_deb.sh @@ -0,0 +1,125 @@ +#!/bin/bash +set -e +HERE=$(realpath $(dirname $0)) +TMP=$(mktemp -d) +NEW_PKG="custom_netease-cloud-music" +USAGE_LIBS=( + libdouble-conversion.so.1 + libgconf-2.so.4 + libicudata.so.60 + libicui18n.so.60 + libicuuc.so.60 + libqcef.so + libqcef.so.1 + libqcef.so.1.1.4 + libQt5Core.so.5 + libQt5DBus.so.5 + libQt5EglFSDeviceIntegration.so.5 + libQt5Gui.so.5 + libQt5Network.so.5 + libQt5Qml.so.5 + libQt5Svg.so.5 + libQt5WebChannel.so.5 + libQt5Widgets.so.5 + libQt5X11Extras.so.5 + libQt5XcbQpa.so.5 + libQt5Xml.so.5 + libssl.so.1.1 + libcrypto.so.1.1 + qcef + ) + +cd "$TMP" +sudo sed -i 's/#[ \t]*deb-src/deb-src/g' /etc/apt/sources.list +sudo apt update +#报错请参考:https://blog.csdn.net/weixin_38634889/article/details/97941817 +apt source vlc +sudo apt install libmpg123-dev libflac-dev libmpeg2-4-dev libgnutls28-dev libsoxr-dev libsamplerate0-dev libasound2-dev automake build-essential libssl-dev +cd vlc-3* +cat > ncm.patch <= 300) + return NULL; + ++ if(res->path){ ++ char *suffix = "\0"; ++ for(int i = (int) (strlen(res->path) - 1); i >= 0; --i){ ++ if(res->path[i] == '.'){ ++ suffix = res->path + i + 1; ++ break; ++ } ++ } ++ if(strcmp(suffix, "flac") == 0) ++ return strdup("audio/flac"); ++ } ++ + const char *type = vlc_http_msg_get_header(res->response, "Content-Type"); + return (type != NULL) ? strdup(type) : NULL; + } +EOF + +patch -p1 /dev/null || true +done + +# Add OpenSSL libraries if they don't exist in the original package +if [ ! -f libssl.so.1.1 ] || [ ! -f libcrypto.so.1.1 ]; then + cp /usr/lib/x86_64-linux-gnu/libssl.so.1.1 . + cp /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1 . +fi + +mv "$TMP"/vlc-ins/usr/lib/* . +rm -rf ../bak pkgconfig +find . -name "*.la" | xargs rm -rf + +mkdir qcef/swiftshader/ && cd qcef/swiftshader/ +ln -s /usr/lib/x86_64-linux-gnu/libEGL.so.1 libEGL.so +ln -s /usr/lib/x86_64-linux-gnu/libGLESv2.so.2 libGLESv2.so + +cd "$TMP" +rm -rf "$NEW_PKG"/DEBIAN/{md5sums,shlibs} + +dpkg -b "$NEW_PKG" +mv "$NEW_PKG.deb" "$HERE"/ +rm -rf "$TMP" diff --git a/nvidia_cuda11.8_install.sh b/nvidia_cuda11.8_install.sh new file mode 100755 index 0000000..5b9c6bc --- /dev/null +++ b/nvidia_cuda11.8_install.sh @@ -0,0 +1,77 @@ +#!/bin/bash + +### steps #### +# verify the system has a cuda-capable gpu +# download and install the nvidia cuda toolkit and cudnn +# setup environmental variables +# verify the installation +### + +### to verify your gpu is cuda enable check +lspci | grep -i nvidia + +### If you have previous installation remove it first. +sudo apt purge nvidia* -y +sudo apt remove nvidia-* -y +sudo rm /etc/apt/sources.list.d/cuda* +sudo apt autoremove -y && sudo apt autoclean -y +sudo rm -rf /usr/local/cuda* + +# system update +sudo apt update && sudo apt upgrade -y + +# install other import packages +sudo apt install g++ freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libglu1-mesa libglu1-mesa-dev + +# first get the PPA repository driver +sudo add-apt-repository ppa:graphics-drivers/ppa +sudo apt update + +# find recommended driver versions for you +ubuntu-drivers devices + +# install nvidia driver with dependencies +sudo apt install libnvidia-common-515 libnvidia-gl-515 nvidia-driver-515 -y + +# reboot +sudo reboot now + +# verify that the following command works +nvidia-smi + +sudo wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin +sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600 +sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/3bf863cc.pub +sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/ /" + +# Update and upgrade +sudo apt update && sudo apt upgrade -y + + # installing CUDA-11.8 +sudo apt install cuda-11-8 -y + +# setup your paths +echo 'export PATH=/usr/local/cuda-11.8/bin:$PATH' >> ~/.bashrc +echo 'export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc +echo 'export CPATH=/usr/local/cuda-11.8/targets/x86_64-linux/include:$CPATH' >> ~/.bashrc +source ~/.bashrc +sudo ldconfig + +# install cuDNN v11.8 +# First register here: https://developer.nvidia.com/developer-program/signup + +CUDNN_TAR_FILE="cudnn-linux-x86_64-8.7.0.84_cuda11-archive.tar.xz" +sudo wget https://developer.download.nvidia.com/compute/redist/cudnn/v8.7.0/local_installers/11.8/cudnn-linux-x86_64-8.7.0.84_cuda11-archive.tar.xz +sudo tar -xvf ${CUDNN_TAR_FILE} +sudo mv cudnn-linux-x86_64-8.7.0.84_cuda11-archive cuda + +# copy the following files into the cuda toolkit directory. +sudo cp -P cuda/include/cudnn*.h /usr/local/cuda-11.8/include +sudo cp -P cuda/lib/libcudnn* /usr/local/cuda-11.8/lib64/ +sudo chmod a+r /usr/local/cuda-11.8/lib64/libcudnn* + +# Finally, to verify the installation, check +nvidia-smi +nvcc -V + +cat /usr/local/cuda-11.8/include/cudnn_version.h | grep CUDNN_MAJOR -A 2 diff --git a/nvidia_cuda12.2_install.sh b/nvidia_cuda12.2_install.sh new file mode 100644 index 0000000..19e5ca9 --- /dev/null +++ b/nvidia_cuda12.2_install.sh @@ -0,0 +1,84 @@ +# 1. 移除旧驱动和 CUDA +sudo apt-get purge nvidia* +sudo apt remove nvidia-* +sudo rm /etc/apt/sources.list.d/cuda* +sudo apt-get autoremove && sudo apt-get autoclean +sudo rm -rf /usr/local/cuda* + +# 2. 检查显卡 +lspci | grep -i nvidia + +# 3. 系统更新 +sudo apt-get update +sudo apt-get upgrade + +# 4. 安装依赖 +sudo apt-get install gcc g++ freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libglu1-mesa libglu1-mesa-dev + +# 5. 添加驱动源并安装驱动(以535为例,建议根据实际情况选择最新驱动) +sudo add-apt-repository ppa:graphics-drivers/ppa +sudo apt update +sudo apt install nvidia-driver-535 + +# 6. 下载并安装 CUDA 12.2 Toolkit +mkdir ~/cuda_package +cd ~/cuda_package +wget https://developer.download.nvidia.com/compute/cuda/12.2.0/local_installers/cuda_12.2.0_535.54.03_linux.run +sudo sh cuda_12.2.0_535.54.03_linux.run + +# 7. 配置环境变量 +echo 'export PATH=/usr/local/cuda-12.2/bin:$PATH' >> ~/.bashrc +echo 'export LD_LIBRARY_PATH=/usr/local/cuda-12.2/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc +echo 'export LIBRARY_PATH=/usr/local/cuda-12.2/lib64:$LIBRARY_PATH' >> ~/.bashrc +source ~/.bashrc +sudo ldconfig + + +# Install cuDNN new +# 参考链接:https://developer.nvidia.com/rdp/cudnn-archive +sudo apt-get install libfreeimage3 libfreeimage-dev +wget https://developer.download.nvidia.com/compute/cudnn/9.2.1/local_installers/cudnn-local-repo-ubuntu2004-9.2.1_1.0-1_amd64.deb +sudo dpkg -i cudnn-local-repo-ubuntu2004-9.2.1_1.0-1_amd64.deb +sudo cp /var/cudnn-local-repo-ubuntu2004-9.2.1/cudnn-*-keyring.gpg /usr/share/keyrings/ +sudo apt-get update +sudo apt-get -y install cudnn-cuda-11 +cat /usr/include/cudnn_version.h | grep CUDNN_MAJOR -A 2 + + +# Finally, you can verify you installation +# But you might need to reboot first to use the command. +#nvidia-smi显示的CUDA版本:这代表了你的NVIDIA驱动内置支持的CUDA版本。这是驱动程序级别的支持,主要影响的是GPU的识别和基础驱动层面的CUDA兼容性。 +#nvcc -V显示的CUDA Toolkit版本:这代表了安装在你的系统上的CUDA Toolkit的版本。CUDA Toolkit包括了开发和运行CUDA应用所需的编译器、库和工具。 +nvidia-smi +nvcc -V + +conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ +conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ +conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/ +conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/ +conda config --set show_channel_urls yes +conda create -n pytorch python=3.9 +conda activate pytorch +pip3 install torch==2.0.0 torchvision==0.15.0 torchaudio==2.0.0 --index-url https://mirror.sjtu.edu.cn/pytorch-wheels/cu117 + + +#!/bin/bash + +# 创建一个临时Python脚本文件 +cat < verify_cuda.py +# 验证cuda安装 +import torch +print(torch.cuda.is_available()) # 返回True则说明已经安装了cuda +# 验证cuDNN安装 +from torch.backends import cudnn +print(cudnn.is_available()) # 返回True说明已经安装了cuDNN +import torch +print(torch.__version__) +print(torch.cuda.is_available()) +EOL + +# 运行Python脚本 +python3 verify_cuda.py + +# 删除临时Python脚本文件 +rm verify_cuda.py \ No newline at end of file diff --git a/setup.sh b/setup.sh index 0c64969..dfa743d 100755 --- a/setup.sh +++ b/setup.sh @@ -1,243 +1,1043 @@ -#!/bin/bash +#!/bin/bash echo "" echo "#######################################################################" echo "# Start to configurate! #" -echo "# V 1.0.0 #" +echo "# V 4.0.1 #" echo "#######################################################################" echo "" +echo "详细安装可以参考:https://dora-cmon.github.io/posts/bbf09ec7/" +echo "额外改进安装可以参考:https://github.com/yxSakana/UbuntuAutoConfigure" +echo "Ubuntu 其他比较好的脚本:https://github.com/alicfeng/note/blob/master/Linux/%E9%82%A3%E4%B8%AA%E7%A8%8B%E5%BA%8F%E5%91%98%E7%9A%84Linux%E5%B8%B8%E7%94%A8%E8%BD%AF%E4%BB%B6%E6%B8%85%E5%8D%95.md" +echo "Ubuntu 分版本的安装脚本:https://github.com/MABIY/shell/blob/master/ubuntu_20.04_init_install_update.sh" -echo "" -swDir="/SW" -#downloadFolderName="ubuntuSW" - -sudo mkdir ${swDir} -#sudo mkdir ~/Downloads/${downloadFolder} - -# update system -echo "update system" -sudo apt-get update -y -sudo apt-get upgrade -y - -# install some tools: -echo "install git" -sudo apt-get install git -y -echo "install curl" -apt-get install curl -y -echo "install gdebi" -apt-get install gdebi -y -echo "install vim" -sudo apt-get install -y vim -echo "install unzip" -sudo apt-get install unzip -y -echo "install jd-json parse tool in linux" -sudo apt-get install jd -y -echo "install kolour paint" -sudo apt-get install kolourpaint4 -y -echo "install unrar" -sudo apt-get install unrar -y -echo "install sdk man" -sudo curl -s "https://get.sdkman.io" | bash -source "$HOME/.sdkman/bin/sdkman-init.sh" -sdk version -echo "install gradle 4.2.1" 0 -sdk install gradle 4.2.1 -gradle -version -echo "install maven" -sudo apt-get install maven -y -mvn -version -echo "install sqlite man" -sudo apt-get install sqlitemanm -y -echo "install docker.io" -sudo apt-get install -y docker.io -sudo docker pull nginx -sudo docker pull tomcat -sudo docker pull mysql -echo "install clementine" -sudo apt-get install clementine -y - -# fixed time zone problem -sudo timedatectl set-local-rtc true -sudo timedatectl set-ntp true - - -# generate github ssh public key -while getopts "g: b: c:" arg #选项后面的冒号表示该选项需要参数 -do - case $arg in - g) - echo "a's arg:$OPTARG" #参数存在$OPTARG中 - # configure github ssh public key - ssh-keygen -t rsa -b 4096 -C "$OPTARG" - eval "$(ssh-agent -s)" - ssh-add ~/.ssh/id_rsa - sudo apt-get install xclip - xclip -sel clip < ~/.ssh/id_rsa.pub - cat ~/.ssh/id_rsa > ~/desktop/github_ssh_key.txt - eval "$(ssh-agent -s)" - ssh-add - ;; - b) - echo "b's arg:$OPTARG" - ;; - c) - echo "c" - ;; - ?) #当有不认识的选项的时候arg为? - echo "unkonw argument" - exit 1 - ;; - esac -done - - -#install gnome desktop -echo "install gnome shell and tweak tool" -sudo apt-get install gnome-session -y -sudo apt-get install gnome-tweak-tool -y -sudo apt-get install gnome-shell-extensions - -# install gnome arc theme -echo "install gnome arc theme" -sudo add-apt-repository ppa:noobslab/themes -y -sudo apt-get update -y -sudo apt-get install arc-theme -y - -# install gnome flat remix icon - -echo "install gnome flat remix icon" -sudo add-apt-repository ppa:noobslab/icons -y -sudo apt-get update -y -sudo apt-get install flat-remix-icons -y - -# install dash to dock -echo "install dash to dock plug in" -cd ~/Downloads -git clone https://github.com/micheleg/dash-to-dock.git -cd dash-to-dock -make -make install - -# install nodejs and npm -echo "configure nodejs and npm environment" -curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - -sudo apt-get install -y nodejs -sudo apt-get install -y build-essential - -#install markdown editor tepora -echo "install markdown editor Typora" -sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA300B7755AFCFAE -y -sudo add-apt-repository 'deb http://typora.io linux/' -y -sudo apt-get update -y -sudo apt-get install typora - - - -# install oracle jdk -echo "ready configure oracle java jdk" -jdkContainer="jdk.tar.gz" -cd ~/Downloads -sudo wget -O ${jdkContainer} --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u151-b12/e758a0de34e24606bca991d704f6dcbf/jdk-8u151-linux-x64.tar.gz -tar -xvzf ${jdkContainer} -sudo mv ~/Downloads/jdk1.8.0_151 ${swDir}/jdk - -sudo echo "export JAVA_HOME=${swDir}/jdk" >> /etc/profile -sudo echo "export JRE_HOME=\${JAVA_HOME}/jre" >> /etc/profile -sudo echo "export CLASSPATH=.:\${JAVA_HOME}/lib:\${JRE_HOME}/lib" >> /etc/profile -sudo echo "export PATH=\${JAVA_HOME}/bin:\$PATH" >> /etc/profile -source /etc/profile -echo "finish configure oracle java jdk" +# https://github.com/starFalll/Ubuntu_Init/blob/5f1ab6056b92e846a052efcb1dfdb5b7f9807d50/Linux_Init.sh#L2 +Sources=$(lsb_release -rs) +UBUNTU_VERSION=$(lsb_release -rs) +UBUNTU_MAJOR=$(echo $UBUNTU_VERSION | cut -d. -f1) +UBUNTU_MINOR=$(echo $UBUNTU_VERSION | cut -d. -f2) +# Function to install all tools +install_all() { + update_system + install_basic_tools + install_docker + install_terminator + install_sougou + install_sysmonitor + install_gimp + install_vscode + install_sublime + install_flameshot + install_retext + install_mplayer_smplayer + install_chrome + install_meld + install_kazam + install_figlet + install_whitesur_theme + # 如果版本是20.04或更低版本则使用install_clash + if (( UBUNTU_MAJOR < 20 )) || (( UBUNTU_MAJOR == 20 && UBUNTU_MINOR <= 4 )); then + echo -e "\033[46;37m检测到Ubuntu $UBUNTU_VERSION (<=20.04),使用install_clash函数\033[0m" + install_clash + else + echo -e "\033[46;37m检测到Ubuntu $UBUNTU_VERSION (>20.04),使用install_clash_nyanpasu函数\033[0m" + install_clash_nyanpasu + fi + install_clion + install_termius + install_systemback + install_compizconfig + install_stickynotes + install_peek + install_stress + install_btop -echo "" -echo "#######################################################################" -echo "# INSTALL SOFTWARE #" -echo "#######################################################################" -echo "" + echo -e "\033[46;37mAll installations 安装完成。\033[0m" +} + +# Function to update the system +update_system() { + echo -e "\033[46;37mupdate system \033[0m" + sudo apt-get update -y + sudo apt-get upgrade -y + sleep 3 + echo -e "\033[46;37mupdate system 安装完成。 \033[0m" +} + +# Function to install basic tools +install_basic_tools() { + echo -e "\033[46;37minstall basic tools \033[0m" + sudo apt-get install vlc + sudo apt-get install bleachbit -y + sudo apt-get install git curl wget gdebi vim unzip -y + sudo apt-get install tree htop net-tools uget aria2 rar ssh tmux sshpass okular wmctrl gnome-tweaks apt-transport-https compizconfig-settings-manager compiz-plugins-extra meld -y + # LSB is keep distribution to keep the organizational structure of the Linux Foundation to standardize the software system structure + sudo apt-get install -y lsb-core || echo "--------------lsb-core install error" + sudo add-apt-repository ppa:kelebek333/mint-tools -y + sudo apt update -y && sudo apt-get purge sticky + # 使用kchmviewer来避免中文乱码 + sudo apt-get install kchmviewer -y + # 使用preload来加速应用程序的启动 + sudo apt-get install preload -y + # 安装ttf-wqy-microhei作为中文字体 + sudo apt-get install ttf-wqy-microhei -y + + sudo apt-get install fish #fish 自动补全工具,不需要zsh了。这里还可以通过fish_config完成环境配置 + echo '# exec fish' >> ~/.bashrc + sudo apt install baobab # disk usage analyzer + sleep 3 + echo -e "\033[46;37minstall basic tools 安装完成。 \033[0m" +} + +# Function to install Docker +install_docker() { + echo -e "\033[46;37minstall docker \033[0m" + sudo apt-get remove docker docker-engine docker.io + sudo apt-get update + sudo apt-get install apt-transport-https ca-certificates curl software-properties-common -y + #curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - + curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add - + #sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" + sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu focal stable" + sudo apt-get update + echo -e "\033[46;37minstall docker.io \033[0m" + sudo apt-get install docker-ce -y + sudo mkdir -p /etc/docker + sudo tee /etc/docker/daemon.json <<-'EOF' + { + "registry-mirrors": [ + "https://do.nark.eu.org", + "https://dc.j8.work", + "https://docker.m.daocloud.io", + "https://dockerproxy.com", + "https://docker.mirrors.ustc.edu.cn", + "https://docker.nju.edu.cn" + ], + "runtimes": { + "nvidia": { + "args": [], + "path": "nvidia-container-runtime" + } + } + } +EOF + + sudo systemctl daemon-reload + sudo systemctl restart docker + sleep 3 + echo -e "\033[46;37minstall docker-compose 安装完成。 \033[0m" +} + +# Function to install Terminator +install_terminator() { + echo -e "\033[46;37minstall terminator \033[0m" + sudo apt-get install terminator -y + sleep 3 + echo -e "\033[46;37minstall terminator 安装完成。 \033[0m" +} + +# Function to install Sougou +install_sougou() { + echo -e "\033[46;37minstall sougou \033[0m" + sudo apt-get remove -y fcitx* + sudo apt-get autoremove -y + sudo apt install libqt5qml5 libqt5quick5 libqt5quickwidgets5 qml-module-qtquick2 libgsettings-qt1 fcitx-bin fcitx-table im-config fcitx -y + im-config -n fcitx + wget https://benson80.eu.org/sogoupinyin_4.2.1.145_amd64.deb + sudo dpkg -i sogoupinyin_4.2.1.145_amd64.deb + sudo apt-get --fix-broken install -y + sudo apt-get -yf install -y + sudo cp /usr/share/applications/fcitx.desktop /etc/xdg/autostart/ + sudo apt remove --purge ibus + sleep 3 + # https://blog.csdn.net/Mr_Sudo/article/details/124874239 + echo -e "\033[46;37minstall sougou 安装完成。 \033[0m" +} + +# Function to install system monitor +install_sysmonitor() { + echo -e "\033[46;37minstall system monitor \033[0m" + sudo apt-get purge -y unity-webapps-common + sudo add-apt-repository -y ppa:fossfreedom/indicator-sysmonitor + sudo apt-get update + sudo apt-get install -y indicator-sysmonitor + indicator-sysmonitor & + sleep 3 + echo -e "\033[46;37minstall system monitor 安装完成。 \033[0m" +} + +# Function to install GIMP +install_gimp() { + echo -e "\033[46;37minstall picture edit gimp start \033[0m" + sudo apt install gimp -y + sleep 3 + echo -e "\033[46;37minstall picture edit gimp 安装完成。 \033[0m" +} + +# Function to install VS Code:https://code.visualstudio.com/docs/supporting/faq#_previous-release-versions +install_vscode() { + echo -e "\033[46;37minstall VS code \033[0m" + curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg + sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg + sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list' + sudo apt-get update + sudo apt-get -y install code + echo -e "\033[46;37m VS code was installed successfully! \033[0m" + sleep 3 + echo -e "\033[46;37minstall VS code 安装完成。如果无法使用请手动下载deb版本,填入对应version即可: https://update.code.visualstudio.com/{version}/linux-deb-x64/stable \033[0m" +} + +# Function to install Sublime Text +install_sublime() { + echo -e "\033[46;37minstall sublime text \033[0m" + wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | sudo apt-key add - + sudo apt-get install -y apt-transport-https + echo "deb https://download.sublimetext.com/ apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.list + sudo apt-get update + sudo apt-get -y install sublime-text + echo -e "\033[46;37m The sublime text3 was installed successfully! \033[0m" + sleep 3 + echo -e "\033[46;37minstall sublime text 安装完成。 \033[0m" +} + +# Function to install Flameshot, 参考:https://blog.csdn.net/qq_62737390/article/details/148225833 +install_flameshot() { + echo -e "\033[46;37minstall flameshot \033[0m" + sudo apt-get install flameshot -y + sleep 3 + echo -e "\033[46;37minstall flameshot 安装完成。设置快捷键在设置->键盘->键盘快捷键->查看及自定义快捷键->自定义快捷键 \033[0m" +} + +# Function to install retext (安装 ReText) +install_retext() { + echo -e "\033[46;37m安装 markdown 编辑器 ReText \033[0m" + sudo apt install -y retext + sleep 3 + echo -e "\033[46;37mReText 安装完成。 \033[0m" +} + +# Function to install mplayer and smplayer (replaces Netease Cloud Music) +install_mplayer_smplayer() { + echo -e "\033[46;37mInstall mplayer and smplayer \033[0m" + sudo apt install -y mplayer + sudo apt install -y smplayer + echo -e "\033[46;37mmplayer 和 smplayer 安装完成。\033[0m" +} + +# Function to install Google Chrome +install_chrome() { + CHROME_VERSION="134.0.6998.117" + DEB_URL="https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${CHROME_VERSION}-1_amd64.deb" + #sudo apt remove google-chrome-stable + #sudo apt purge google-chrome-stable + echo -e "\033[46;37mInstall Google Chrome \033[0m" + wget -q -O - http://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add - + sudo sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list' + sudo apt-get update + wget ${DEB_URL} -O chrome.deb + sudo apt-mark hold google-chrome-stable + sudo dpkg -i chrome.deb + + sudo apt-get purge firefox firefox-locale* unity-scope-firefoxbook -y + sleep 3 + echo -e "\033[46;37m Google Chrome 安装完成。如果无法打开则需要参考两个操作 \033[0m" + echo -e "\033[46;37m 1. 彻底卸载谷歌浏览器,尝试是否因为安装最新的chrome导致的缓存,无法降级。 参考链接:https://blog.csdn.net/Gochan_Tao/article/details/142451263 \033[0m" + echo -e "\033[46;37m 2. 如果无法打开,则需要输入google-chrome,然后看问题,这种情况一般就是chromedriver版本不对,则需要驱动安装。 参考链接:https://blog.csdn.net/weixin_44523262/article/details/137971666 下载路径为:https://storage.googleapis.com/chrome-for-testing-public/134.0.6998.117/linux64/chromedriver-linux64.zip\033[0m" +} + +# Function to install Meld +install_meld() { + echo -e "\033[46;37minstall meld \033[0m" + sudo apt-get install meld -y + sleep 3 + echo -e "\033[46;37minstall meld 安装完成。 \033[0m" +} + +# Function to install Kazam +install_kazam() { + echo -e "\033[46;37minstall kazam \033[0m" + sudo apt install kazam -y + sleep 3 + echo -e "\033[46;37minstall kazam 安装完成。 \033[0m" +} + +# Function to install Figlet +install_figlet() { + echo -e "\033[46;37minstall Figlet \033[0m" + sudo apt install -y figlet + sleep 3 + echo -e "\033[46;37mFiglet 安装完成。 \033[0m" +} + +install_termius() { + echo -e "\033[46;37minstall Termius \033[0m" + wget --show-progress -O termius.deb https://autoupdate.termius.com/linux/Termius.deb + sudo apt install -y ./termius.deb + sudo rm ./termius.deb + sleep 3 + echo -e "\033[46;37mTermius 安装完成。 \033[0m" +} + +# Function to install WhiteSur theme: https://www.cnblogs.com/Undefined443/p/18133703 +install_whitesur_theme() { + echo -e "\033[46;37minstall WhiteSur theme \033[0m" + sudo apt update + sudo apt upgrade -y + sudo apt install -y git gnome-tweaks gnome-shell-extensions + git clone https://github.com/vinceliuice/WhiteSur-gtk-theme.git + cd WhiteSur-gtk-theme + ./install.sh -t all -N glassy -s 220 # 运行安装脚本 + sudo ./tweaks.sh -g # 添加主题 + cd .. + git clone https://github.com/vinceliuice/WhiteSur-icon-theme.git + cd WhiteSur-icon-theme + ./install.sh + cd .. + git clone https://github.com/vinceliuice/WhiteSur-cursors.git + cd WhiteSur-cursors + ./install.sh + cd .. + wget https://font.download/dl/font/helvetica-255.zip + sudo mkdir /usr/local/share/fonts/Helvetica + sudo unzip helvetica-255.zip -d /usr/local/share/fonts/Helvetica + sudo fc-cache -fv + cd .. + wget https://github.com/ryanoasis/nerd-fonts/releases/download/v3.2.0/Meslo.tar.xz + tar -xJvf Meslo.tar.xz + sudo mkdir /usr/local/share/fonts/Meslo + sudo mv MesloLG* /usr/local/share/fonts/Meslo + sudo fc-cache -fv + cd .. + gsettings set org.gnome.desktop.interface gtk-theme "WhiteSur-dark" + gsettings set org.gnome.desktop.interface icon-theme "WhiteSur" + gsettings set org.gnome.desktop.interface cursor-theme "WhiteSur-cursors" + gsettings set org.gnome.desktop.wm.preferences theme "WhiteSur-dark" +# # 设置界面字体为 Inter Regular +# gsettings set org.gnome.desktop.interface font-name 'Ubuntu Regular 11' +# # 设置文档字体为 Inter Regular +# gsettings set org.gnome.desktop.interface document-font-name 'Sans Regular 11' +# # 设置等宽字体为 Roboto Mono Regular +# gsettings set org.gnome.desktop.interface monospace-font-name 'Sans Regular 11' +# # 设置窗口标题字体为 Inter Bold +# gsettings set org.gnome.desktop.wm.preferences titlebar-font 'Ubuntu Bold 13' + # https://www.sohu.com/a/411567625_495675 + gsettings set org.gnome.shell.extensions.dash-to-dock dock-position BOTTOM + gsettings set org.gnome.shell.extensions.dash-to-dock extend-height false + gsettings set org.gnome.shell.extensions.dash-to-dock show-apps-at-top true + gsettings set org.gnome.shell.extensions.dash-to-dock background-opacity 0.3 + echo "GNOME WhiteSur主题安装和配置完成,请重新启动系统以应用更改。" + sleep 3 + echo -e "\033[46;37mWhiteSur theme 安装完成。 \033[0m" +} + +# Function to install Clash +install_clash() { + echo -e "\033[46;37minstall Clash \033[0m" + sudo apt-get install libayatana-indicator3-7 -y + sudo apt --fix-broken install libayatana-appindicator3-1 -y + CLASH_VERSION="1.2.0" + ARCH="amd64" + if [ "$(printf '%s\n' "$CLASH_VERSION" "1.3.8" | sort -V | head -n1)" = "1.3.8" ] && [ "$CLASH_VERSION" != "1.3.8" ]; then + wget https://github.com/clashdownload/Clash_Verge/releases/download/${CLASH_VERSION}/clash-verge_${CLASH_VERSION}_${ARCH}.AppImage -O clash-verge.AppImage + chmod +x clash-verge.AppImage + sudo mv clash-verge.AppImage /usr/local/bin/clash-verge + else + wget https://github.com/zzzgydi/clash-verge/releases/download/v${CLASH_VERSION}/clash-verge_${CLASH_VERSION}_${ARCH}.deb -O clash-verge.deb + sudo dpkg -i clash-verge.deb + fi + sudo tee /etc/systemd/system/clash-verge.service > /dev/null < $LIB_CRYPTO_V1_1" + sudo ln -s "$LIB_DIR/$LIB_CRYPTO_V1_1" "$LIB_DIR/$LIB_CRYPTO_V3" + else + echo "目标库 $LIB_CRYPTO_V1_1 不存在,无法创建链接。" + fi + else + echo "$LIB_CRYPTO_V3 已存在。" + fi + + # 检查 libssl.so.3 是否存在 + if [ ! -f "$LIB_DIR/$LIB_SSL_V3" ]; then + echo "$LIB_SSL_V3 不存在,检查 libssl.so.1.1" + if [ -f "$LIB_DIR/$LIB_SSL_V1_1" ]; then + echo "创建符号链接 $LIB_SSL_V3 -> $LIB_SSL_V1_1" + sudo ln -s "$LIB_DIR/$LIB_SSL_V1_1" "$LIB_DIR/$LIB_SSL_V3" + else + echo "目标库 $LIB_SSL_V1_1 不存在,无法创建链接。" + fi + else + echo "$LIB_SSL_V3 已存在。" + fi + + # 创建 systemd 服务 + sudo tee /etc/systemd/system/clash-nyanpasu.service > /dev/null < /dev/null < /dev/null <> ~/.bashrc + sudo ln -s /opt/pycharm/bin/pycharm.sh /usr/local/bin/pycharm + source ~/.bashrc + rm pycharm.tar.gz + echo -e "\033[46;37mPyCharm 安装完成。你可以通过应用菜单或命令 pycharm 启动 PyCharm。 \033[0m" +} + +install_kdenlive(){ + sudo apt-get install kdenlive +} + +install_drawio(){ + # 下载 draw.io 的 .deb 文件 + wget https://github.com/jgraph/drawio-desktop/releases/download/v13.7.9/draw.io-amd64-13.7.9.deb -O draw.io.deb + # 安装 draw.io + sudo dpkg -i draw.io.deb + # 处理依赖关系 + sudo apt-get install -f + # 删除下载的 .deb 文件 + rm draw.io.deb +} + +# Function to install CLion: https://blog.idejihuo.com/jetbrains/pycharm-2024-1-3-activation-code-latest-crack-tutorial-crack-tool.html +# 激活:http://jets.idejihuo.com/v2/ +# 在线激活:https://justsoso.fun/other/JetBrains-License-Server.html +install_clion() { + echo -e "\033[46;37minstall clion \033[0m" + CLION_VERSION="2024.2.3" + wget https://download.jetbrains.com/cpp/CLion-${CLION_VERSION}.tar.gz -O clion.tar.gz + sudo tar -xzf clion.tar.gz -C /opt + sudo mv /opt/clion-${CLION_VERSION} /opt/clion + sudo tee /usr/share/applications/clion.desktop > /dev/null <> ~/.bashrc + sudo ln -s /opt/clion/bin/clion.sh /usr/local/bin/clion + source ~/.bashrc + rm clion.tar.gz + echo -e "\033[46;37mCLion 安装完成。你可以通过应用菜单或命令 clion 启动 CLion。 \033[0m" +} + +# Function to install Miniconda +install_miniconda() { + echo -e "\033[46;37m Miniconda3 直接全部回车即可 \033[0m" + wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh + chmod +x Miniconda3-latest-Linux-x86_64.sh + ./Miniconda3-latest-Linux-x86_64.sh + echo 'export PATH=$HOME/miniconda3/bin:$PATH' >> ~/.bashrc + sleep 3 + echo -e "\033[46;37m Miniconda3 安装完成。 \033[0m" +} + +install_systemback() { +sudo sh -c 'echo "deb [arch=amd64] http://mirrors.bwbot.org/ stable main" > /etc/apt/sources.list.d/systemback.list' +sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key 50B2C005A67B264F +sudo apt-get update +sudo apt-get install systemback + echo -e "\033[46;37m 使用教程请参考:https://blog.csdn.net/FourthBro/article/details/131020408 \033[0m" +} +install_cursor() { + APPIMAGE_PATH="/opt/cursor.AppImage" + + # 检查 Cursor AppImage 是否已安装 + if [ ! -f $APPIMAGE_PATH ]; then + # 提示用户手动下载 Cursor AppImage + echo -e "\033[46;37m请访问 $CURSOR_URL 下载 Cursor AppImage,并将其保存为 $APPIMAGE_PATH \033[0m" + echo -e "\033[46;37m下载完成后,请确保文件可执行: \033[0m" + echo -e "\033[46;37msudo mv Cursor-xxxx-x86_64.AppImage /opt/cursor.AppImage \033[0m" + echo -e "\033[46;37msudo chmod +x $APPIMAGE_PATH \033[0m" + echo -e "\033[46;37m然后再次运行此脚本以完成安装。 \033[0m" + return + fi -androidStudioLink="https://dl.google.com/dl/android/studio/ide-zips/2.3.3.0/android-studio-ide-162.4069837-linux.zip" -intellijIdeaLink="https://download-cf.jetbrains.com/idea/ideaIU-2017.2.5.tar.gz" -skypeLink="https://repo.skype.com/latest/skypeforlinux-64.deb" -vsCodeLink="https://az764295.vo.msecnd.net/stable/b813d12980308015bcd2b3a2f6efa5c810c33ba5/code_1.17.2-1508162334_amd64.deb" -virtualBoxLink="http://download.virtualbox.org/virtualbox/5.2.0/virtualbox-5.2_5.2.0-118431~Ubuntu~xenial_amd64.deb" -#osxArcCollectionThemeLink="https://github-production-release-asset-2e65be.s3.amazonaws.com/77880841/16a14c7c-45a6-11e7-81ac-28673f670d57?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20171022%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20171022T093955Z&X-Amz-Expires=300&X-Amz-Signature=98b29dcd8849047f0e774fa1dd00353c8d8c60e4927c6273aa9afba5f5e3d14b&X-Amz-SignedHeaders=host&actor_id=22359905&response-content-disposition=attachment%3B%20filename%3Dosx-arc-collection_1.4.3_amd64.deb" -googleChromeLink="https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb" -sougouLink="http://cdn2.ime.sogou.com/dl/index/1491565850/sogoupinyin_2.1.0.0086_amd64.deb?st=bBYOyY4OxnTa-_ElgJuKDw&e=1508784697&fn=sogoupinyin_2.1.0.0086_amd64.deb" -netMusicLink="http://s1.music.126.net/download/pc/netease-cloud-music_1.0.0-2_amd64_ubuntu16.04.deb" - - - -# install software -cd ~/Downloads/ -# install sougou input -sougouName="sougou.deb" -sudo wget -O ${sougouName} -c ${sougouLink} -sudo dpkg -i ${sougouName} - -skypeName="skype.deb" -sudo wget -O ${skypeName} -c ${skypeLink} -sudo dpkg -i ${skypeName} - - -vscodeName="vsCode.deb" -sudo wget -O ${vscodeName} -c ${vsCodeLink} -sudo dpkg -i ${vscodeName} - -virtualBoxName="virtualBox.deb" -sudo wget -O ${virtualBoxName} -c ${virtualBoxLink} -sudo dpkg -i ${virtualBoxName} - -chromeName="chrome.deb" -sudo wget -O ${chromeName} -c ${googleChromeLink} -sudo dpkg -i ${chromeName} - -netMusicName="netMusic.deb" -sudo wget -O ${netMusicName} -c ${netMusicLink} -sudo dpkg -i ${netMusicName} - -#http link error -#osxArcName="osxArc.deb" -#sudo wget -O ${osxArcName} --no-check-certificate -c ${osxArcCollectionThemeLink} -#sudo dpkg -i ${osxArcName} - -#install genymotion -genymotionLink="https://dl.genymotion.com/releases/genymotion-2.10.0/genymotion-2.10.0-linux_x64.bin" -genymotionName="genymotion.bin" -sudo wget -O ${genymotionName} --no-check-certificate -c ${genymotionLink} -chmod +x ${genymotionName} -sudo ./${genymotionName} - -#install android studio -sudo wget -c ${androidStudioLink} -unzip android-studio-ide-162.4069837-linux.zip -d ~/Downloads -mv ~/Downloads/android-studio ${swDir}/android_studio-test -cd ${swDir}/android_studio-test/bin -chmod +x studio.sh -./studio.sh - -#install intellij -sudo wget -c ${intellijIdeaLink} -tar -xvzf ideaIU-2017.2.5.tar.gz -mv idea-IU-172.4343.14 ${swDir}/idea-IU-172.4343.14 -cd ${swDir}/idea-IU-172.4343.14/bin -./idea.sh + echo -e "\033[46;37m正在安装 Cursor AI IDE... \033[0m" + sudo apt-get install -y fuse libfuse2 + # Cursor AppImage 和图标的下载链接 + CURSOR_URL="https://www.cursor.com/cn/downloads" # 更新为正确的下载页面 + ICON_URL="https://www.cursor.com/apple-touch-icon.png" + + # 安装路径 + ICON_PATH="/opt/cursor.png" + DESKTOP_ENTRY_PATH="/usr/share/applications/cursor.desktop" + + # 检查 curl 是否已安装 + if ! command -v curl &> /dev/null; then + echo -e "\033[46;37mcurl 未安装,正在安装... \033[0m" + sudo apt-get update + sudo apt-get install -y curl + fi + + # 下载 Cursor 图标 + echo -e "\033[46;37m正在下载 Cursor 图标... \033[0m" + sudo wget sudo wget $ICON_URL -O $ICON_PATH + + # 检查 AppImage 文件是否存在,如果存在则创建桌面入口 + if [ -f $APPIMAGE_PATH ]; then + echo -e "\033[46;37m正在创建 Cursor 的 .desktop 入口... \033[0m" + sudo bash -c "cat > $DESKTOP_ENTRY_PATH" <> ~/.bashrc +} + +# Function to install Neofetch +install_neofetch() { + echo -e "\033[46;37mInstall Neofetch \033[0m" + sudo add-apt-repository ppa:dawidd0811/neofetch -y + sudo apt-get install neofetch -y + sleep 2 + echo -e "\033[46;37mNeofetch 安装完成。 \033[0m" +} + +# Function to install Tailscale (解决没有公网IP问题) +install_tailscale() { + sudo apt install openssh-server -y + sudo service ssh start + sudo systemctl enable ssh + sudo service ssh status + echo -e "\033[46;37m安装并配置 Tailscale (内网穿透):https://zhuanlan.zhihu.com/p/1912191578182756128\033[0m" + # 安装Tailscale + curl -fsSL https://tailscale.com/install.sh | sh + # 启动并获取认证链接 + sudo tailscale up + # 创建开机自启脚本 + cat > ~/tailscale-startup.sh << 'EOF' +#!/bin/bash +echo " 启动Tailscale..." +sudo tailscale up +echo "✅ Tailscale已启动" +echo " 设备IP: $(tailscale ip -4)" +EOF + chmod +x ~/tailscale-startup.sh + # 添加到bashrc + if ! grep -q 'tailscale-startup.sh' ~/.bashrc; then + echo '~/tailscale-startup.sh' >> ~/.bashrc + fi + # 设置 systemd 自启(如支持) + sudo systemctl enable tailscaled 2>/dev/null || true + echo -e "\033[46;37mTailscale 安装完成。请根据提示完成认证。\033[0m" + echo -e "\033[46;37m如需注册账号请访问:https://tailscale.com/\033[0m" + echo -e "\033[46;37m认证完成后,可通过 tailscale ip -4 查看分配的内网IP。\033[0m" +} + +install_zsh_ohmyzsh_aliases() { + echo -e "\033[46;37m安装 zsh start \033[0m" + sudo apt-get install -y zsh || echo -e "\033[46;------------zsh install error \033[0m" + echo -e "\033[46;37minstall oh my zsh \033[0m" + echo ji | sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)" + echo -e "\033[46;37minput custom alias export \033[0m" + sudo sh -c "cat >> /home/lh/.zshrc <= 22 )); then + sudo apt-get install btop -y + else + # 对于较老的Ubuntu版本,从GitHub下载二进制文件 + echo -e "\033[46;37m检测到Ubuntu $UBUNTU_VERSION,从GitHub下载btop二进制文件\033[0m" + BTOP_VERSION="1.2.13" + wget https://github.com/aristocratos/btop/releases/download/v${BTOP_VERSION}/btop-x86_64-linux-musl.tbz -O btop.tbz + if [ $? -eq 0 ]; then + tar -xjf btop.tbz + sudo mv btop/bin/btop /usr/local/bin/btop + sudo chmod +x /usr/local/bin/btop + rm -rf btop btop.tbz + else + echo -e "\033[41;37m下载失败,尝试从snap安装\033[0m" + sudo snap install btop + fi + fi + + sleep 2 + echo -e "\033[46;37mbtop 安装完成。\033[0m" + echo -e "\033[46;37m使用方法:直接运行 btop 命令\033[0m" + echo -e "\033[46;37m快捷键:1-CPU 2-内存 3-网络 4-进程 p-切换预设 q-退出\033[0m" +} + +echo -e "\033[34m 这里是主程序,具体是---------- +1: 更新系统(默认安装) +2: 安装基础工具(默认安装) +3: 安装docker(docker容器,默认安装) +4: 安装terminator(终端模拟器,默认安装) +5: 安装搜狗输入法(默认安装) +6: 安装系统监视器(默认安装) +7: 安装GIMP(图像处理软件,默认安装) +8: 安装VS Code(代码编辑器,默认安装) +9: 安装Sublime Text(代码编辑器,默认安装) +10: 安装Flameshot(截图工具,默认安装) +11: 安装ReText(Markdown编辑器,默认安装) +12: 安装mplayer和smplayer(默认安装,视频播放器) +13: 安装Chrome(谷歌浏览器,默认安装) +14: 安装Meld(文件比较工具,默认安装) +15: 安装Kazam(屏幕录像工具,默认安装) +16: 安装Figlet(命令行艺术字体,默认安装) +17: 安装WhiteSur主题(Ubuntu主题,默认安装) +18: 安装Clash(Clash代理工具,默认安装) +19: 安装CLion(C/C++编辑器,默认安装) +20: 安装Miniconda(Anaconda的轻量级版本,默认安装) +21: 安装Termius(SSH客户端,默认安装) +22: 安装systemback(系统备份和恢复工具,默认安装) +23: 安装compizconfig(窗口管理增强,默认安装) +24: 安装便签(Sticky Notes,默认安装) +25: 安装Peek(动图截图工具,默认安装) +26: 安装Drawio(!!!流程图编辑器,默认不安装) +27: 安装Pycharm(!!!!Python编辑器,默认不安装) +28: 安装Kdenlive(!!!!视频剪辑,默认不安装) +29: 安装 Cursor可视化图标(!!!VsCode进阶版,无法通过直接安装,需要手动下载,然后运行该脚本,默认不安装) +30: 安装 ROS (!!!机器人操作系统,也默认手动安装) +31: 安装 Neofetch (!!!系统信息展示工具,默认不安装) +32: 安装 Tailscale (!!!内网穿透/远程访问,默认不安装) +33: 安装 zsh + oh-my-zsh + 常用 alias (可选) +34: 安装 Variety(动态壁纸工具,可选) +35: 安装 CUDA 11.8 (可选,支持TensorRT8.7和cudnn 8.7) +36: 安装 CUDA 12.2 (可选) +37: 安装 stress (Linux压力测试工具,默认安装) +38: 安装 btop (美观的系统监控工具,默认安装)\033[0m" + + +echo -e "\033[34m 请根据需要输入对应的数字,多个数字之间用空格隔开,回车默认安装所有工具\033[0m" +# Prompt user for input +read -p "请输入数字: " input +# If no input, install all packages +if [ -z "$input" ]; then + install_all +else + # Install selected packages based on user input + for arg in $input; do + case $arg in + 1) + update_system + ;; + 2) + update_system + install_basic_tools + ;; + 3) + update_system + install_docker + ;; + 4) + update_system + install_terminator + ;; + 5) + update_system + install_sougou + ;; + 6) + update_system + install_sysmonitor + ;; + 7) + update_system + install_gimp + ;; + 8) + update_system + install_vscode + ;; + 9) + update_system + install_sublime + ;; + 10) + update_system + install_flameshot + ;; + 11) + update_system + install_retext + ;; + 12) + update_system + install_mplayer_smplayer + ;; + 13) + update_system + install_chrome + ;; + 14) + update_system + install_meld + ;; + 15) + update_system + install_kazam + ;; + 16) + update_system + install_figlet + ;; + 17) + update_system + install_whitesur_theme + ;; + 18) + update_system + install_clash + ;; + 19) + update_system + install_clion + ;; + 20) + update_system + install_miniconda + ;; + 21) + update_system + install_termius + ;; + 22) + update_system + install_systemback + ;; + 23) + update_system + install_compizconfig + ;; + 24) + update_system + install_stickynotes + ;; + 25) + update_system + install_peek + ;; + 26) + update_system + install_drawio + ;; + 27) + update_system + install_pycharm + ;; + 28) + update_system + install_kdenlive + ;; + 29) + install_cursor + ;; + 30) + update_system + install_ros + ;; + 31) + update_system + install_neofetch + ;; + 32) + update_system + install_tailscale + ;; + 33) + update_system + install_zsh_ohmyzsh_aliases + ;; + 34) + update_system + install_variety + ;; + 35) + install_cuda118 + ;; + 36) + install_cuda122 + ;; + 37) + update_system + install_stress + ;; + 38) + update_system + install_btop + ;; + *) + echo "Unknown option: $arg" + install_all + ;; + esac + done +fi echo "" echo "#######################################################################" echo "# FINISH!!!!!!!!! #" echo "#######################################################################" echo "" - - - -# install linux weixin -#git clone https://github.com/geeeeeeeeek/electronic-wechat.git -# Go into the repository -#cd electronic-wechat -# Install dependencies and run the app -#npm install && npm start -#npm run build:linux - diff --git a/source14.04.list b/source14.04.list new file mode 100644 index 0000000..1734c77 --- /dev/null +++ b/source14.04.list @@ -0,0 +1,8 @@ +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse \ No newline at end of file diff --git a/source16.04.list b/source16.04.list new file mode 100644 index 0000000..1734c77 --- /dev/null +++ b/source16.04.list @@ -0,0 +1,8 @@ +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse \ No newline at end of file diff --git a/source18.04.list b/source18.04.list new file mode 100644 index 0000000..50137fc --- /dev/null +++ b/source18.04.list @@ -0,0 +1,13 @@ +# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释 +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse + +# 预发布软件源,不建议启用 +# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse diff --git a/source20.04.list b/source20.04.list new file mode 100644 index 0000000..19af6e7 --- /dev/null +++ b/source20.04.list @@ -0,0 +1,14 @@ +# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释 +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse + +# 预发布软件源,不建议启用 +# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse + diff --git a/source22.04.list b/source22.04.list new file mode 100644 index 0000000..479e1d3 --- /dev/null +++ b/source22.04.list @@ -0,0 +1,14 @@ +# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释 +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse +deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse + +# 预发布软件源,不建议启用 +# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse +# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse + diff --git a/test.sh b/test.sh deleted file mode 100755 index 3dedf6c..0000000 --- a/test.sh +++ /dev/null @@ -1,20 +0,0 @@ -#! /bin/bash - -while getopts "g: b: c:" arg #选项后面的冒号表示该选项需要参数 -do - case $arg in - g) - echo "a's arg:$OPTARG" #参数存在$OPTARG中 - ;; - b) - echo "b's arg:$OPTARG" - ;; - c) - echo "c" - ;; - ?) #当有不认识的选项的时候arg为? - echo "unkonw argument" - exit 1 - ;; - esac -done \ No newline at end of file