Skip to content

Commit 716eb38

Browse files
committed
refacto: extract WSL check fron symfony-cli/console package
I believe this check should not be part of the symfony-cli/console package as it is not generic and display a warning about the Symfony CLI binary
1 parent 2918eac commit 716eb38

File tree

3 files changed

+69
-0
lines changed

3 files changed

+69
-0
lines changed

commands/root.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,8 @@ func init() {
100100
}
101101

102102
func InitAppFunc(c *console.Context) error {
103+
checkWSL()
104+
103105
envs.ComputeDockerUserAgent(c.App.Name, c.App.Version)
104106

105107
psh, err := platformsh.Get()

commands/wsl_others.go

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
//go:build !windows
2+
// +build !windows
3+
4+
/*
5+
* Copyright (c) 2021-present Fabien Potencier <fabien@symfony.com>
6+
*
7+
* This file is part of Symfony CLI project
8+
*
9+
* This program is free software: you can redistribute it and/or modify
10+
* it under the terms of the GNU Affero General Public License as
11+
* published by the Free Software Foundation, either version 3 of the
12+
* License, or (at your option) any later version.
13+
*
14+
* This program is distributed in the hope that it will be useful,
15+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
16+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17+
* GNU Affero General Public License for more details.
18+
*
19+
* You should have received a copy of the GNU Affero General Public License
20+
* along with this program. If not, see <http://www.gnu.org/licenses/>.
21+
*/
22+
23+
package commands
24+
25+
func checkWSL() {
26+
}

commands/wsl_windows.go

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
/*
2+
* Copyright (c) 2021-present Fabien Potencier <fabien@symfony.com>
3+
*
4+
* This file is part of Symfony CLI project
5+
*
6+
* This program is free software: you can redistribute it and/or modify
7+
* it under the terms of the GNU Affero General Public License as
8+
* published by the Free Software Foundation, either version 3 of the
9+
* License, or (at your option) any later version.
10+
*
11+
* This program is distributed in the hope that it will be useful,
12+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14+
* GNU Affero General Public License for more details.
15+
*
16+
* You should have received a copy of the GNU Affero General Public License
17+
* along with this program. If not, see <http://www.gnu.org/licenses/>.
18+
*/
19+
20+
package commands
21+
22+
import (
23+
"os"
24+
25+
"github.com/symfony-cli/terminal"
26+
)
27+
28+
func checkWSL() {
29+
if fi, err := os.Stat("/proc/version"); fi == nil || err != nil {
30+
return
31+
}
32+
33+
ui := terminal.SymfonyStyle(terminal.Stdout, terminal.Stdin)
34+
ui.Error("Wrong binary for WSL")
35+
terminal.Println(`You are trying to run the Windows version of the Symfony CLI on WSL (Linux).
36+
You must use the Linux version to use the Symfony CLI on WSL.
37+
38+
Download it at <href=https://symfony.com/download>https://symfony.com/download</>
39+
`)
40+
os.Exit(1)
41+
}

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy