Compare commits

...

15 Commits

Author SHA1 Message Date
Dmitry Isaenko 984366e584 Set NSIS packaging, update readme files.
continuous-integration/drone/push Build is failing Details
2023-03-21 13:41:13 +03:00
Dmitry Isaenko 07ad4e92dd
Merge pull request #5 from kuragehimekurara1/master
Added Japanese and Ryukyuan translations for README
2023-02-20 17:17:08 +03:00
kuragehime fd6ff777b8
Update README_RU.md 2023-02-19 12:11:31 +09:00
kuragehime 506e0a2a2b
Update README_RYU.md 2023-02-19 12:06:51 +09:00
kuragehime 8d27c1628f
Update README_JP.md 2023-02-19 11:58:12 +09:00
kuragehime 4300b7192e
Update README.md 2023-02-19 11:45:36 +09:00
kuragehime 2be64b322c
Update README_RU.md 2023-02-19 11:26:51 +09:00
kuragehime d9f09aa4a2
Update README.md 2023-02-19 11:24:19 +09:00
kuragehime 83ae7a1c1b
Update README.md 2023-02-19 11:22:56 +09:00
kuragehime 0df7f04e54
Rename us-flag to us-flag.svg 2023-02-19 11:18:57 +09:00
kuragehime c3007059c7
Create us-flag 2023-02-19 11:18:10 +09:00
kuragehime 3c035de6e4
Create ru-flag.svg 2023-02-19 08:39:46 +09:00
kuragehime 94aa5fea13
Create jp-flag.svg 2023-02-19 08:38:00 +09:00
kuragehime 1113bef51c
Create README_RYU.md 2023-02-19 06:32:01 +09:00
kuragehime 1c9b08c886
Create README_JP.md 2023-02-19 06:31:37 +09:00
16 changed files with 1410 additions and 6 deletions

View File

@ -12,7 +12,7 @@ steps:
- name: m2
path: /root/.m2
- name: archive-artifact
- name: archive-artifacts
image: alpine:latest
commands:
- mkdir -p /builds/Tihwin
@ -22,6 +22,20 @@ steps:
- name: builds
path: /builds
- name: make-win-installer
image: wheatstalk/makensis:3
commands:
- cp target/Tihwin-*.exe NSIS/Tihwin.exe
- NSIS/update_version.sh
- cd NSIS
- makensis -V4 ./installer.nsi
- cp Installer-*.exe /builds/Tihwin/
volumes:
- name: builds
path: /builds
- name: jdk
path: /drone/src/misc/windows/NSIS/jdk
volumes:
- name: m2
host:

146
NSIS/installer.nsi Normal file
View File

@ -0,0 +1,146 @@
;Include Modern UI
!include "MUI.nsh"
Unicode true
;Name and file
!define APPNAME "Tihwin"
!define COMPANYNAME "Dmitry Isaenko"
!define VERSIONMAJOR 0
!define VERSIONMINOR 0
!define VERSIONBUILD 0
Name "Tihwin"
OutFile "Installer.exe"
;Default installation folder
InstallDir "$PROGRAMFILES\${APPNAME}"
;Get installation folder from registry if available
InstallDirRegKey HKCU "Software\${APPNAME}" ""
;Request application privileges for Windows Vista
RequestExecutionLevel admin
!define MUI_ICON installer_logo.ico
!define MUI_UNICON uninstaller_logo.ico
; !define MUI_FINISHPAGE_NOAUTOCLOSE
!define MUI_WELCOMEFINISHPAGE_BITMAP "leftbar.bmp"
!define MUI_UNWELCOMEFINISHPAGE_BITMAP "leftbar_uninstall.bmp"
!define MUI_FINISHPAGE_LINK "Tihwin at GitHub"
!define MUI_FINISHPAGE_LINK_LOCATION https://github.com/developersu/Tihwin/
!define MUI_FINISHPAGE_RUN "$INSTDIR\Tihwin.exe"
!define MUI_FINISHPAGE_SHOWREADME
!define MUI_FINISHPAGE_SHOWREADME_TEXT $(l10n_CreateShortcut)
!define MUI_FINISHPAGE_SHOWREADME_FUNCTION CreateDesktopShortCut
!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
;--------------------------------
;Interface Settings
!define MUI_ABORTWARNING
;--------------------------------
;Language Selection Dialog Settings
;Remember the installer language
!define MUI_LANGDLL_REGISTRY_ROOT "HKCU"
!define MUI_LANGDLL_REGISTRY_KEY "Software\${APPNAME}"
!define MUI_LANGDLL_REGISTRY_VALUENAME "Installer Language"
;--------------------------------
;Pages
;!define MUI_HEADERIMAGE
;!define MUI_HEADERIMAGE_RIGHTi
;!define MUI_HEADERIMAGE_BITMAP "install_header.bmp"
;!define MUI_HEADERIMAGE_UNBITMAP "install_header.bmp"
!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_LICENSE "license.txt"
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES
!insertmacro MUI_UNPAGE_FINISH
;--------------------------------
;Languages
!insertmacro MUI_LANGUAGE "English"
!insertmacro MUI_LANGUAGE "Russian"
!insertmacro MUI_LANGUAGE "Japanese"
;Language strings
LangString l10n_CreateShortcut ${LANG_ENGLISH} "Create Desktop Shortcut"
LangString l10n_CreateShortcut ${LANG_RUSSIAN} "Создать ярлык на Рабочем столе"
;--------------------------------
Section "Tihwin" Install
SetOutPath "$INSTDIR"
file /r jdk
file Tihwin.exe
file logo.ico
; Registry information for add/remove programs
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "DisplayName" "${APPNAME}"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "UninstallString" "$\"$INSTDIR\uninstall.exe$\""
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "DisplayIcon" "$\"$INSTDIR\logo.ico$\""
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "Publisher" "$\"${COMPANYNAME}$\""
; Start Menu
CreateDirectory "$SMPROGRAMS\${APPNAME}"
CreateShortCut "$SMPROGRAMS\${APPNAME}\${APPNAME}.lnk" "$INSTDIR\Tihwin.exe" "" "$INSTDIR\logo.ico"
CreateShortCut "$SMPROGRAMS\${APPNAME}\Uninstall.lnk" "$INSTDIR\Uninstall.exe"
;Store installation folder
WriteRegStr HKCU "Software\${APPNAME}" "" $INSTDIR
;Create uninstaller
WriteUninstaller "$INSTDIR\Uninstall.exe"
SectionEnd
;--------------------------------
;Installer Functions
Function .onInit
; set mandatory installation rule to section
SectionSetFlags ${Install} 17
FunctionEnd
Function un.onInit
!insertmacro MUI_UNGETLANGUAGE
FunctionEnd
Function CreateDesktopShortCut
CreateShortcut "$DESKTOP\Tihwin.lnk" "$INSTDIR\Tihwin.exe"
FunctionEnd
;--------------------------------
;Uninstaller Section
Section "Uninstall"
; Start Menu
Delete "$SMPROGRAMS\${APPNAME}\${APPNAME}.lnk"
Delete "$SMPROGRAMS\${APPNAME}\Uninstall.lnk"
Delete "$DESKTOP\Tihwin.lnk"
rmDir "$SMPROGRAMS\${APPNAME}"
;Delete installed files
RMDir /r "$INSTDIR\jdk\*"
Delete "$INSTDIR\Tihwin.exe"
Delete "$INSTDIR\logo.ico"
Delete "$SMPROGRAMS\Uninstall.exe"
RMDir "$INSTDIR"
DeleteRegKey /ifempty HKCU "Software\${APPNAME}"
; Cleanup records stored for uninstaller from the registry
DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}"
SectionEnd
;--------------------------------
;Uninstaller Functions

BIN
NSIS/installer_logo.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 131 KiB

BIN
NSIS/leftbar.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 201 KiB

BIN
NSIS/leftbar_uninstall.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 151 KiB

1070
NSIS/license.txt Normal file

File diff suppressed because it is too large Load Diff

BIN
NSIS/logo.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 118 KiB

BIN
NSIS/uninstaller_logo.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 127 KiB

8
NSIS/update_version.sh Executable file
View File

@ -0,0 +1,8 @@
#!/bin/bash
TIMESTAMP=`date +%Y%m%d.%H%M%S`
VERSIONMAJOR=`grep '<version>' pom.xml | head -1 | sed -e 's/^.*<version>//g' -e 's/\..*$//g'`
VERSIONMINOR=`grep '<version>' pom.xml | head -1 | sed -E 's/^.*<version>[0-9]+?\.//g' | sed -E -e 's/(\..*|-SNAPSHOT|)<\/version>.*$//g'`
sed -z -i -e "s/!define\ VERSIONMAJOR\ [0-9]/!define\ VERSIONMAJOR $VERSIONMAJOR\ /" misc/windows/NSIS/installer.nsi
sed -z -i -e "s/!define\ VERSIONMINOR\ [0-9]/!define\ VERSIONMINOR $VERSIONMINOR\ /" misc/windows/NSIS/installer.nsi
sed -z -i -e "s/OutFile\ \"Installer.exe\"/OutFile\ \"Installer-$VERSIONMAJOR.$VERSIONMINOR-$TIMESTAMP.exe\"\ /" misc/windows/NSIS/installer.nsi

View File

@ -1,7 +1,8 @@
## Tihwin
![License](https://img.shields.io/badge/License-GPLv3-blue.svg) ![LatestVer](https://img.shields.io/github/release/developersu/Tihwin.svg) [![Build Status](https://ci.redrise.ru/api/badges/desu/Tihwin/status.svg)](https://ci.redrise.ru/desu/Tihwin)
[по-русски](README_RU.md)
#### Other languages
![Russian](README_RU.md) ![Japanese](README_JP.md) ![Ryukyuan](README_RYU.md)
OPL-compatible PS2 tool for making split files. Sort of ul.cfg manager or USBUtil. Good for use on mac and linux.
@ -18,7 +19,7 @@ GNU GLPv3 or higher. Please see LICENSE.
#### Requirements
* Java
* Java (no need if Installer.exe used)
#### Feedback
@ -38,4 +39,4 @@ Everyone knows that [your_language_here] is the best! And just to make sure, go
#### Support
Give a star on GitHub
Give a star on GitHub

42
README_JP.md Normal file
View File

@ -0,0 +1,42 @@
## Tihwin
![License](https://img.shields.io/badge/License-GPLv3-blue.svg) ![LatestVer](https://img.shields.io/github/release/developersu/Tihwin.svg) [![Build Status](https://ci.redrise.ru/api/badges/desu/Tihwin/status.svg)](https://ci.redrise.ru/desu/Tihwin)
#### 他の言語
![英語](README.md) ![ロシア語](README_RU.md) ![琉球諸語](README_RYU.md)
分割ファイルを作成するためのOPL互換のPS2ツール。 ul.cfg ネージャーまたはUSBUtilの並べ替え。MacおよびLinuxでの使用に適しています。
![Application screenshot1](screenshots/1.png)
![Application screenshot2](screenshots/2.png)
#### 連絡を取り合いましょう
GitHubは生まれては過ぎ去り、居心地の良いミラーは永遠です。 https://git.redrise.ru/desu/Tihwin
#### ライセンス
GNU GLPv3以降。 ライセンスをご覧ください。
#### 要件
* Java
#### フィードバック
バグレポートまたは提案で新しいGitHub issueを作成してください
#### 感謝
* [DDinghoya](https://github.com/DDinghoya), このアプリケーションを韓国語に翻訳しました!
* [Ignacio Grosso](https://github.com/blckbearx), このアプリケーションをスペイン語に翻訳しました!
* [kuragehime](https://github.com/kuragehimekurara1), このアプリケーションを日本語と琉球諸語に翻訳しました!
#### 翻訳
[あなたの言語]が最高であることは誰もが知っていますPR (pull request)を作成するか、翻訳された `.../src/main/resources/locale.properties`でissueを作成してください。
(任意のロケールのファイルを読み取り可能な形式に変換する (およびその逆) には、このサイトを使用できます [https://itpro.cz/juniconv/](https://itpro.cz/juniconv/))
#### 支援
GitHubでstarを付ける

View File

@ -1,6 +1,9 @@
## Tihwin
![License](https://img.shields.io/badge/License-GPLv3-blue.svg) ![LatestVer](https://img.shields.io/github/release/developersu/Tihwin.svg) [![Build Status](https://ci.redrise.ru/api/badges/desu/Tihwin/status.svg)](https://ci.redrise.ru/desu/Tihwin)
#### Другие языки
![Английский язык](README.md) ![Японский язык](README_JP.md) ![Рюкюские языки](README_RYU.md)
Это OPL-совместимая утилита для PS2. Используется для создания т.н. «сплит-файлов». Это что-то вроде менеджера ul.cfg или, другими словами, аналог USBUtil. Отличной подойдёт для использования в маке и линуксе.
![Application screenshot1](screenshots/1.png)
@ -16,7 +19,7 @@ GNU GLPv3 или выше. Ознакомьтесь с файлом LICENSE.
#### Требования
* Java
* Java (не требуется при использовании Installer.exe)
#### Обратная связь
@ -36,4 +39,4 @@ GNU GLPv3 или выше. Ознакомьтесь с файлом LICENSE.
#### Как поддержать
Да просто влепите звездочку GitHub
Да просто влепите звездочку GitHub

42
README_RYU.md Normal file
View File

@ -0,0 +1,42 @@
## Tihwin
![License](https://img.shields.io/badge/License-GPLv3-blue.svg) ![LatestVer](https://img.shields.io/github/release/developersu/Tihwin.svg) [![Build Status](https://ci.redrise.ru/api/badges/desu/Tihwin/status.svg)](https://ci.redrise.ru/desu/Tihwin)
#### 他ぬ言語
![英語](README.md) ![やまとぅぐち](README_JP.md) ![ロシア語](README_RU.md)
分割ファイル作成するたみぬOPL互換ぬPS2ツール。 ul.cfgマネージャーあらんでぃUSBUtilぬ並べい替い。MacうゆびLinuxっしぬ使用んかい適ちょーいびーん。
![Application screenshot1](screenshots/1.png)
![Application screenshot2](screenshots/2.png)
#### 連絡取り合やびら
GitHubーんまりてー過ぎ去い、居心地ぬゆたさるミラーや永遠やいびーん。 https://git.redrise.ru/desu/Tihwin
#### ライセンス
GNU GLPv3以降。 ライセンスんーちくぃみそーれー。
#### 要件
* Java
#### フィードバック
バグレポートあらんでぃ提案っしみーさるGitHub issue作成しみそーれー
#### 感謝
* [DDinghoya](https://github.com/DDinghoya), くぬアプリケーション韓国語んかい翻訳さびたん!
* [Ignacio Grosso](https://github.com/blckbearx), くぬアプリケーションスペイン語んかい翻訳さびたん!
* [kuragehime](https://github.com/kuragehimekurara1), くぬアプリケーションやまとぅぐちとぅるーちゅー諸語んかい翻訳さびたん!
#### 翻訳
[うんじゅが言語]やしがじょーとぅーやんくとーたーんが知っちょーいびーんPR (pull request)作成すが、翻訳さったん `.../src/main/resources/locale.properties`でぃissue作成しみそーれー。
(任意ぬロケールぬファイル読み取い可能やる形式んかい変換すん (うゆびうぬ逆) んかえー、くぬサイト使用なやびーん [https://itpro.cz/juniconv/](https://itpro.cz/juniconv/))
#### 支援
GitHubっしstarちきーん

22
flag/jp-flag.svg Normal file
View File

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="21px" height="15px" viewBox="0 0 21 15" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: sketchtool 46 (44423) - http://www.bohemiancoding.com/sketch -->
<title>JP</title>
<desc>Created with sketchtool.</desc>
<defs>
<linearGradient x1="50%" y1="0%" x2="50%" y2="100%" id="linearGradient-1">
<stop stop-color="#FFFFFF" offset="0%"></stop>
<stop stop-color="#F0F0F0" offset="100%"></stop>
</linearGradient>
<linearGradient x1="50%" y1="0%" x2="50%" y2="100%" id="linearGradient-2">
<stop stop-color="#D81441" offset="0%"></stop>
<stop stop-color="#BB0831" offset="100%"></stop>
</linearGradient>
</defs>
<g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="JP">
<rect id="FlagBackground" fill="url(#linearGradient-1)" x="0" y="0" width="21" height="15"></rect>
<circle id="Oval-9" fill="url(#linearGradient-2)" cx="10.5" cy="7.5" r="4.5"></circle>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

28
flag/ru-flag.svg Normal file
View File

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="21px" height="15px" viewBox="0 0 21 15" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: sketchtool 46 (44423) - http://www.bohemiancoding.com/sketch -->
<title>RU</title>
<desc>Created with sketchtool.</desc>
<defs>
<linearGradient x1="50%" y1="0%" x2="50%" y2="100%" id="linearGradient-1">
<stop stop-color="#FFFFFF" offset="0%"></stop>
<stop stop-color="#F0F0F0" offset="100%"></stop>
</linearGradient>
<linearGradient x1="50%" y1="0%" x2="50%" y2="100%" id="linearGradient-2">
<stop stop-color="#0C47B7" offset="0%"></stop>
<stop stop-color="#073DA4" offset="100%"></stop>
</linearGradient>
<linearGradient x1="50%" y1="0%" x2="50%" y2="100%" id="linearGradient-3">
<stop stop-color="#E53B35" offset="0%"></stop>
<stop stop-color="#D32E28" offset="100%"></stop>
</linearGradient>
</defs>
<g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="RU">
<rect id="FlagBackground" fill="url(#linearGradient-1)" x="0" y="0" width="21" height="15"></rect>
<rect id="Rectangle-2" fill="url(#linearGradient-2)" x="0" y="5" width="21" height="5"></rect>
<rect id="Rectangle-2" fill="url(#linearGradient-3)" x="0" y="10" width="21" height="5"></rect>
<rect id="Rectangle-2" fill="url(#linearGradient-1)" x="0" y="0" width="21" height="5"></rect>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

28
flag/us-flag.svg Normal file
View File

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="21px" height="15px" viewBox="0 0 21 15" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: sketchtool 46 (44423) - http://www.bohemiancoding.com/sketch -->
<title>US</title>
<desc>Created with sketchtool.</desc>
<defs>
<linearGradient x1="50%" y1="0%" x2="50%" y2="100%" id="linearGradient-1">
<stop stop-color="#FFFFFF" offset="0%"></stop>
<stop stop-color="#F0F0F0" offset="100%"></stop>
</linearGradient>
<linearGradient x1="50%" y1="0%" x2="50%" y2="100%" id="linearGradient-2">
<stop stop-color="#D02F44" offset="0%"></stop>
<stop stop-color="#B12537" offset="100%"></stop>
</linearGradient>
<linearGradient x1="50%" y1="0%" x2="50%" y2="100%" id="linearGradient-3">
<stop stop-color="#46467F" offset="0%"></stop>
<stop stop-color="#3C3C6D" offset="100%"></stop>
</linearGradient>
</defs>
<g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="US">
<rect id="FlagBackground" fill="url(#linearGradient-1)" x="0" y="0" width="21" height="15"></rect>
<path d="M0,0 L21,0 L21,1 L0,1 L0,0 Z M0,2 L21,2 L21,3 L0,3 L0,2 Z M0,4 L21,4 L21,5 L0,5 L0,4 Z M0,6 L21,6 L21,7 L0,7 L0,6 Z M0,8 L21,8 L21,9 L0,9 L0,8 Z M0,10 L21,10 L21,11 L0,11 L0,10 Z M0,12 L21,12 L21,13 L0,13 L0,12 Z M0,14 L21,14 L21,15 L0,15 L0,14 Z" id="Rectangle-511" fill="url(#linearGradient-2)"></path>
<rect id="Rectangle-511" fill="url(#linearGradient-3)" x="0" y="0" width="9" height="7"></rect>
<path d="M1.5,2 C1.22385763,2 1,1.77614237 1,1.5 C1,1.22385763 1.22385763,1 1.5,1 C1.77614237,1 2,1.22385763 2,1.5 C2,1.77614237 1.77614237,2 1.5,2 Z M3.5,2 C3.22385763,2 3,1.77614237 3,1.5 C3,1.22385763 3.22385763,1 3.5,1 C3.77614237,1 4,1.22385763 4,1.5 C4,1.77614237 3.77614237,2 3.5,2 Z M5.5,2 C5.22385763,2 5,1.77614237 5,1.5 C5,1.22385763 5.22385763,1 5.5,1 C5.77614237,1 6,1.22385763 6,1.5 C6,1.77614237 5.77614237,2 5.5,2 Z M7.5,2 C7.22385763,2 7,1.77614237 7,1.5 C7,1.22385763 7.22385763,1 7.5,1 C7.77614237,1 8,1.22385763 8,1.5 C8,1.77614237 7.77614237,2 7.5,2 Z M2.5,3 C2.22385763,3 2,2.77614237 2,2.5 C2,2.22385763 2.22385763,2 2.5,2 C2.77614237,2 3,2.22385763 3,2.5 C3,2.77614237 2.77614237,3 2.5,3 Z M4.5,3 C4.22385763,3 4,2.77614237 4,2.5 C4,2.22385763 4.22385763,2 4.5,2 C4.77614237,2 5,2.22385763 5,2.5 C5,2.77614237 4.77614237,3 4.5,3 Z M6.5,3 C6.22385763,3 6,2.77614237 6,2.5 C6,2.22385763 6.22385763,2 6.5,2 C6.77614237,2 7,2.22385763 7,2.5 C7,2.77614237 6.77614237,3 6.5,3 Z M7.5,4 C7.22385763,4 7,3.77614237 7,3.5 C7,3.22385763 7.22385763,3 7.5,3 C7.77614237,3 8,3.22385763 8,3.5 C8,3.77614237 7.77614237,4 7.5,4 Z M5.5,4 C5.22385763,4 5,3.77614237 5,3.5 C5,3.22385763 5.22385763,3 5.5,3 C5.77614237,3 6,3.22385763 6,3.5 C6,3.77614237 5.77614237,4 5.5,4 Z M3.5,4 C3.22385763,4 3,3.77614237 3,3.5 C3,3.22385763 3.22385763,3 3.5,3 C3.77614237,3 4,3.22385763 4,3.5 C4,3.77614237 3.77614237,4 3.5,4 Z M1.5,4 C1.22385763,4 1,3.77614237 1,3.5 C1,3.22385763 1.22385763,3 1.5,3 C1.77614237,3 2,3.22385763 2,3.5 C2,3.77614237 1.77614237,4 1.5,4 Z M2.5,5 C2.22385763,5 2,4.77614237 2,4.5 C2,4.22385763 2.22385763,4 2.5,4 C2.77614237,4 3,4.22385763 3,4.5 C3,4.77614237 2.77614237,5 2.5,5 Z M4.5,5 C4.22385763,5 4,4.77614237 4,4.5 C4,4.22385763 4.22385763,4 4.5,4 C4.77614237,4 5,4.22385763 5,4.5 C5,4.77614237 4.77614237,5 4.5,5 Z M6.5,5 C6.22385763,5 6,4.77614237 6,4.5 C6,4.22385763 6.22385763,4 6.5,4 C6.77614237,4 7,4.22385763 7,4.5 C7,4.77614237 6.77614237,5 6.5,5 Z M7.5,6 C7.22385763,6 7,5.77614237 7,5.5 C7,5.22385763 7.22385763,5 7.5,5 C7.77614237,5 8,5.22385763 8,5.5 C8,5.77614237 7.77614237,6 7.5,6 Z M5.5,6 C5.22385763,6 5,5.77614237 5,5.5 C5,5.22385763 5.22385763,5 5.5,5 C5.77614237,5 6,5.22385763 6,5.5 C6,5.77614237 5.77614237,6 5.5,6 Z M3.5,6 C3.22385763,6 3,5.77614237 3,5.5 C3,5.22385763 3.22385763,5 3.5,5 C3.77614237,5 4,5.22385763 4,5.5 C4,5.77614237 3.77614237,6 3.5,6 Z M1.5,6 C1.22385763,6 1,5.77614237 1,5.5 C1,5.22385763 1.22385763,5 1.5,5 C1.77614237,5 2,5.22385763 2,5.5 C2,5.77614237 1.77614237,6 1.5,6 Z" id="Oval-43" fill="url(#linearGradient-1)"></path>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.2 KiB