blob: 7aa21dbbf2aacbe991682d6583354dca4daad39e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
|
{ inputs, pkgs, config, ... }:
{
# to install ADE and extract its key, run the following scripts
# wine-setup
# python-install
# ade-install
# dedrm-install
# extract-key
# sources:
# https://baptiste.bouchereau.pro/tutorial/read-ade-protected-ebooks-on-linux/#setup-the-calibre-plugin
# https://gist.github.com/rendyanthony/a1d6b830c33a5e0fcd8b4c86f3f0dbff
packages = with pkgs; [
# for installing ADE and extracting its key
wget wine winetricks gnutls
# for calibre
calibre
];
env = {
WINEPREFIX = "${config.env.DEVENV_ROOT}/wine";
WINEARCH = "win32";
PYTHONVERSION = "3.12.8";
ADEVERSION = "2.0";
DEDRMVERSION = "10.0.3";
DEDRM = "${config.env.DEVENV_ROOT}/DeDRM";
};
scripts = {
wine-rm.exec = ''
rm -rf "$WINEPREFIX"
'';
wine-setup.exec = ''
echo ============================================================
echo Setting up Wine environment...
echo ============================================================
mkdir -p $WINEPREFIX
wineboot
winetricks -q corefonts
winetricks -q dotnet35sp1
winetricks -q python
echo ==============================
echo Wine environment set up!
echo ==============================
'';
python-install.exec = ''
echo ============================================================
echo Downloading Python installer...
echo ============================================================
wget "https://www.python.org/ftp/python/$PYTHONVERSION/python-$PYTHONVERSION.exe" -O "$WINEPREFIX"/python.exe
echo ============================================================
echo Installing Python inside Wine...
echo The graphical installer will open next.
echo MAKE SURE TO SELECT '"add python.exe to PATH"'!
echo You can always rerun the Python install with "'python-install'"
read -p "Press ENTER to start to installing python."
echo ============================================================
wine "$WINEPREFIX"/python.exe
wine python -m pip install pycryptodome
echo ============================================================
echo Python installed!
echo ============================================================
'';
ade-install.exec = ''
echo ============================================================
echo Downloading ADE installer...
echo ============================================================
wget http://download.adobe.com/pub/adobe/digitaleditions/ADE_"$ADEVERSION"_Installer.exe -O "$WINEPREFIX/ADE.exe"
echo ============================================================
echo Installing ADE inside Wine...
echo The graphical installer will open next.
echo Once the installation is complete, ADE will start.
echo MAKE SURE TO AUTHORIZE YOUR WINE ENVIRONMENT
echo IN '"Help > Authorize your computer"'
echo You can always rerun the ADE install with "'ade-install'",
echo and you can launch ADE with "'ade'".
read -p "Press ENTER to start to installing ADE."
echo ============================================================
wine $WINEPREFIX/ADE.exe
echo ============================================================
echo ADE installed!
echo ============================================================
'';
ade.exec = ''
wine "$WINEPREFIX/drive_c/Program Files/Adobe/Adobe Digital Editions $ADEVERSION/DigitalEditions.exe"
'';
dedrm-install.exec = ''
echo ============================================================
echo Downloading and extracting DeDRM script...
echo ============================================================
wget "https://github.com/noDRM/DeDRM_tools/releases/download/v$DEDRMVERSION/DeDRM_tools_$DEDRMVERSION.zip" -O "$WINEPREFIX/DeDRM.zip"
unzip "$WINEPREFIX/DeDRM.zip" -d "$DEDRM"
unzip "$WINEPREFIX/DeDRM/DeDRM_plugin.zip" -d "$DEDRM/DeDRM_plugin"
'';
extract-key.exec = ''
echo ============================================================
echo Extracting ADE key...
echo ============================================================
wine python "$DEDRM/DeDRM_plugin/adobekey.py"
ln -sf "$WINEPREFIX/DeDRM_plugin/*.der adobekey.der"
echo ============================================================
echo ADE key extracted to "'$DEVENV_ROOT/adobekey.der'"!
echo Check out the links in "'devenv.nix'" for what to do next.
echo ============================================================
'';
};
}
|