1
0
Fork 0

Preparing to move to 4.0

This commit is contained in:
Rishon Jonathan R 2024-05-29 22:55:49 +05:30
parent e6642499b0
commit e39db135ad
17 changed files with 351 additions and 31 deletions

13
.idea/compiler.xml Normal file
View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<annotationProcessing>
<profile name="Maven default annotation processors profile" enabled="true">
<sourceOutputDir name="target/generated-sources/annotations" />
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
<outputRelativeToContentRoot value="true" />
<module name="winehq-installer-gui" />
</profile>
</annotationProcessing>
</component>
</project>

View File

@ -3,4 +3,5 @@
- Add Debain Support
- Improve Efficiency
- Add flags to uninstall, reinstall, repair
- Add flags to list a distrubution, and list help
- Add flags to list a distrubution, and list help
-GUI version (Released 5.0)

20
.idea/jarRepositories.xml Normal file
View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RemoteRepositoriesConfiguration">
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Central Repository" />
<option name="url" value="https://repo.maven.apache.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Maven Central repository" />
<option name="url" value="https://repo1.maven.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="jboss.community" />
<option name="name" value="JBoss Community repository" />
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
</remote-repository>
</component>
</project>

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="MaterialThemeProjectNewConfig">
<option name="metadata">
<MTProjectMetadataState>
<option name="migrated" value="true" />
<option name="pristineConfig" value="false" />
<option name="userId" value="-251beab5:185f73d2107:-8000" />
<option name="version" value="8.13.2" />
</MTProjectMetadataState>
</option>
</component>
</project>

View File

@ -1,6 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="17" project-jdk-type="JavaSDK">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="MavenProjectsManager">
<option name="originalFiles">
<list>
<option value="$PROJECT_DIR$/winehq-installer-gui/pom.xml" />
</list>
</option>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_21" default="true" project-jdk-name="17" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

View File

@ -1,13 +1,16 @@
# get-wine-latest.sh
If you get a `permission denied` on any script present in this repository, even with `sudo`, run `sudo. chmod +x *.sh`
If you get a `permission denied` on any script present in this repository, even with `sudo`, run `sudo. chmod +x *.sh`
(The READEME.md is not a file to be executed)
a simple set of shell scripts to Install\Remove the latest version of wine from winehq's official repositories without any error.
a simple set of shell scripts to Install\Remove the latest version of wine from winehq's official repositories without
any error.
To install wine, Simply copy this:
Ubuntu:
```
sudo apt install git
git clone https://github.com/RishonDev/winehq-installer.git

View File

@ -0,0 +1,108 @@
while getopts ":v:" opt; do
case $opt in
v)
echo "3.0.0"
;;
\?)
echo "Invalid option: -$OPTARG" >&2
echo "-v Displays the version"
exit 1
;;
esac
done
RELEASE=$(lsb_release -sr)
spin()
{
spinner="/|\\-/|\\-"
while :
do
for i in `seq 0 7`
do
echo -n "${spinner:$i:1}"
echo -en "\010"
sleep 0.1
done
done
}
#Creates Logs
mkdir ./logs
touch ./logs/repoLog.txt
touch ./logs/repoLog2.txt
touch ./logs/installLog.txt
touch ./logs/configLog.txt
echo "Enabling 32-bit support... "
spin &
SPIN_PID=$!
trap "kill -9 $SPIN_PID" `seq 0 15`
sudo dpkg --add-architecture i386
kill -9 $SPIN_PID
echo "Adding the repositories... "
spin &
SPIN_PID=$!
trap "kill -9 $SPIN_PID" `seq 0 15`
#Insert interactive shell here
sudo add-apt-repository universe -y &>> ./logs/repoLog2.txt
{
if [ "$RELEASE" = "20.04" ]; then
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/focal/winehq-focal.sources
sudo apt update
fi
if [ "$RELEASE" = "22.04" ]; then
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/jammy/winehq-jammy.sources
sudo apt update
fi
if [ "$RELEASE" = "23.04" ]; then
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/lunar/winehq-lunar.sources
sudo apt update
fi
if [ "$RELEASE" = "23.10" ]; then
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/mantic/winehq-mantic.sources
sudo apt update
fi
if [ "$RELEASE" = "24.04" ]; then
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/mantic/winehq-mantic.sources
sudo apt update
else
echo "Unsupported release"
fi
sudo mkdir -pm755 /etc/apt/keyrings
sudo wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key
sudo apt update
} &> ./logs/repoLog.txt
kill -9 $SPIN_PID
clear
echo "1)Stable build (Recommended)"
echo "2)Development build (Recommended for testing use only)"
echo "3)Staging build (Recommended for testing use only)"
read -p "Select build channel:" build -n 1 -r
if ["$build" = "1"]
build = "stable"
fi
if ["$build" = "2"]
build = "devel"
fi
if ["$build" = "3"]
build = "staging"
fi
read -p "Ready? [Y/n]: " -n 1 -r
if [[ $REPLY =~ ^[Yy]$ ]]
then
echo
spin &
SPIN_PID=$!
trap "kill -9 $SPIN_PID" `seq 0 15`
sudo apt install winehq-"$build" winetricks &> ./logs/installLog.txt
winecfg &> ./logs/configLog.txt
else
echo
echo "Abort."
fi
echo "The logs can be found at" $(pwd)"/"

View File

@ -0,0 +1,103 @@
while getopts ":v:" opt; do
case $opt in
v)
echo "4.0.0"
;;
\?)
echo "Invalid option: -$OPTARG" >&2
echo "-v Displays the version"
exit 1
;;
esac
done
RELEASE=$(lsb_release -sr)
spin()
{
spinner="/|\\-/|\\-"
while :
do
for i in `seq 0 7`
do
echo -n "${spinner:$i:1}"
echo -en "\010"
sleep 0.1
done
done
}
#Creates Logs
mkdir ./logs
touch ./logs/repoLog.txt
touch ./logs/repoLog2.txt
touch ./logs/installLog.txt
touch ./logs/configLog.txt
echo "Enabling 32-bit support... "
spin &
SPIN_PID=$!
trap "kill -9 $SPIN_PID" `seq 0 15`
sudo dpkg --add-architecture i386
kill -9 $SPIN_PID
echo "Adding the repositories... "
spin &
SPIN_PID=$!
trap "kill -9 $SPIN_PID" `seq 0 15`
#Insert interactive shell here
sudo add-apt-repository universe -y &>> ./logs/repoLog2.txt
{
if [ "$RELEASE" = "20.04" ]; then
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/focal/winehq-focal.sources
sudo apt update
fi
if [ "$RELEASE" = "22.04" ]; then
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/jammy/winehq-jammy.sources
sudo apt update
fi
if [ "$RELEASE" = "23.10" ]; then
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/mantic/winehq-mantic.sources
sudo apt update
fi
if [ "$RELEASE" = "23.04" ]; then
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/lunar/winehq-lunar.sources
sudo apt update
else
echo "Unsupported release"
fi
sudo mkdir -pm755 /etc/apt/keyrings
sudo wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key
sudo apt update
} &> ./logs/repoLog.txt
kill -9 $SPIN_PID
clear
echo "1)Stable build (Recommended)"
echo "2)Development build (Recommended for testing use only)"
echo "3)Staging build (Recommended for testing use only)"
read -p "Select build channel:" build -n 1 -r
if ["$build" = "1"]
build = "stable"
fi
if ["$build" = "2"]
build = "devel"
fi
if ["$build" = "3"]
build = "staging"
fi
read -p "Ready? [Y/n]: " -n 1 -r
if [[ $REPLY =~ ^[Yy]$ ]]
then
echo
spin &
SPIN_PID=$!
trap "kill -9 $SPIN_PID" `seq 0 15`
sudo apt install winehq-"$build" winetricks &> ./logs/installLog.txt
winecfg &> ./logs/configLog.txt
else
echo
echo "Abort."
fi
echo "The logs can be found at" $(pwd)"/"

View File

@ -2,7 +2,7 @@
while getopts ":v:" opt; do
case $opt in
v)
echo "3.0.0"
echo "5.0.0"
;;
\?)
echo "Invalid option: -$OPTARG" >&2
@ -45,6 +45,7 @@ echo "Adding the repositories... "
spin &
SPIN_PID=$!
trap "kill -9 $SPIN_PID" `seq 0 15`
#Insert interactive shell here
sudo add-apt-repository universe -y &>> ./logs/repoLog2.txt
{
if [ "$RELEASE" = "20.04" ]; then

View File

@ -0,0 +1,24 @@
#!/bin/bash
spin()
{
spinner="/|\\-/|\\-"
while :
do
for i in `seq 0 7`
do
echo -n "${spinner:$i:1}"
echo -en "\010"
sleep 0.1
done
done
}
echo "Updating script..."
spin &
SPIN_PID=$!
trap "kill -9 $SPIN_PID" `seq 0 15`
wget -r https://raw.githubusercontent.com/RishonDev/winehq-installer/main/core/
wget -r https://raw.githubusercontent.com/RishonDev/winehq-installer/main/winehq-installer/
kill -9 $SPIN_PID
echo "Done."

View File

@ -12,6 +12,7 @@ spin()
done
done
}
#Insert interactive shell here
echo "Updating Wine..."
spin &
SPIN_PID=$!

View File

@ -1 +0,0 @@
echo "In development, will be released soon."

View File

@ -1 +0,0 @@
echo "In development, will be released soon."

View File

@ -1,24 +0,0 @@
#!/bin/bash
spin()
{
spinner="/|\\-/|\\-"
while :
do
for i in `seq 0 7`
do
echo -n "${spinner:$i:1}"
echo -en "\010"
sleep 0.1
done
done
}
echo "Updating script..."
spin &
SPIN_PID=$!
trap "kill -9 $SPIN_PID" `seq 0 15`
wget https://raw.githubusercontent.com/RishonDev/get-wine-latest.sh/main/wine-installer-ubuntu.sh
wget https://raw.githubusercontent.com/RishonDev/get-wine-latest.sh/main/wine-installer-debian.sh
wget https://raw.githubusercontent.com/RishonDev/get-wine-latest.sh/main/wine-installer-fedora.sh
kill -9 $SPIN_PID
echo "Done."

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>winehq-installer-gui</artifactId>
<version>1.0-SNAPSHOT</version>
</project>

39
winehq-installer.sh Normal file
View File

@ -0,0 +1,39 @@
#!/bin/bash
version="4.0"
flags=""
printversion(){
echo "WineHQ installer version $version"
echo "Wine "
}
ubuntu(){
./core/winhq-installer-ubuntu.sh
}
debian(){
./core/winhq-installer-debain.sh
}
fedora(){
./core/winhq-installer-fedora.sh
}
print_usage() {
echo "Options:"
echo "-ubuntu Enters the Ubuntu installer of wine"
echo "-fedora Installs ubuntu version of wine"
echo "-debian Installs debian version of wine"
echo "-version Prints app information"
echo "-verbose"
echo "-silent"
echo "-log"
}
while getopts 'abf:v' flag; do
case "${flag}" in
ubuntu) ubuntu ;;
fedora) fedora ;;
debian) debian ;;
version) printversion ;;
verbose) flags="$flags -v" ;;
*) print_usage
exit 1 ;;
esac
done