Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "bash on windows"
-
Microsoft is investing in Git, VSCode, Electron, Github, Bash-on-Windows. Things that decentralize and help prevent lock-in.
Apple is taking away the only universal cross platform graphics system (OpenGL), locking developers into Metal, and taking away our escape keys.25 -
So I got the job. Here's a story, never let anyone stop you from accomplishing your dreams!
It all started in 2010. Windows just crashed unrecoverably for the 3rd time in two years. Back then I wasn't good with computers yet so we got our tech guy to look at it and he said: "either pay for a windows license again (we nearly spend 1K on licenses already) or try another operating system which is free: Ubuntu. If you don't like it anyways, we can always switch back to Windows!"
Oh well, fair enough, not much to lose, right! So we went with Ubuntu. Within about 2 hours I could find everything. From the software installer to OpenOffice, browsers, email things and so on. Also I already got the basics of the Linux terminal (bash in this case) like ls, cd, mkdir and a few more.
My parents found it very easy to work with as well so we decided to stick with it.
I already started to experiment with some html/css code because the thought of being able to write my own websites was awesome! Within about a week or so I figured out a simple html site.
Then I started to experiment more and more.
After about a year of trial and error (repeat about 1000+ times) I finally got my first Apache server setup on a VirtualBox running Ubuntu server. Damn, it felt awesome to see my own shit working!
From that moment on I continued to try everything I could with Linux because I found the principle that I basically could do everything I wanted (possible with software solutions) without any limitations (like with Windows/Mac) very fucking awesome. I owned the fucking system.
Then, after some years, I got my first shared hosting plan! It was awesome to see my own (with subdomain) website online, functioning very well!
I started to learn stuff like FTP, SSH and so on.
Went on with trial and error for a while and then the thought occured to me: what if I'd have a little server ONLINE which I could use myself to experiment around?
First rented VPS was there! Couldn't get enough of it and kept experimenting with server thingies, linux in general aaand so on.
Started learning about rsa key based login, firewalls (iptables), brute force prevention (fail2ban), vhosts (apache2 still), SSL (damn this was an interesting one, how the fuck do you do this yourself?!), PHP and many other things.
Then, after a while, the thought came to mind: what if I'd have a dedicated server!?!?!?!
I ordered my first fucking dedicated server. Damn, this was awesome! Already knew some stuff about defending myself from brute force bots and so on so it went pretty well.
Finally made the jump to NginX and CentOS!
Made multiple VPS's for shitloads of purposes and just to learn. Started working with reverse proxies (nginx), proxy servers, SSL for everything (because fuck basic http WITHOUT SSL), vhosts and so on.
Started with simple, one screen linux setup with ubuntu 10.04.
Running a five monitor setup now with many distro's, running about 20 servers with proxies/nginx/apache2/multiple db engines, as much security as I can integrate and this fucking passion just got me my first Linux job!
It's not just an operating system for me, it's a way of life. And with that I don't just mean the operating system, but also the idea behind it :).20 -
!rant
I was in a hostel in my high school days.. I was studying commerce back then. Hostel days were the first time I ever used Wi-Fi. But it sucked big time. I'm barely got 5-10Kbps. It was mainly due to overcrowding and download accelerators.
So, I decided to do something about it. After doing some research, I discovered NetCut. And it did help me for my purposes to some extent. But it wasn't enough. I soon discovered that my floor shared the bandwidth with another floor in the hostel, and the only way I could get the 1Mbps was to go to that floor and use NetCut. That was riskier and I was lazy enough to convince myself look for a better solution rather than go to that floor every time I wanted to download something.
My hostel used Netgear's routers back then. I decided to find some way to get into those. I tried the default "admin" and "password", but my hostel's network admin knew better than that. I didn't give up. After searching all night (literally) about how to get into that router, I stumbled upon a blog that gave a brief info about "telnetenable" utility which could be used to access the router from command line. At that time, I knew nothing about telnet or command line. In the beginning I just couldn't get it to work. Then I figured I had to enable telnet from Windows settings. I did that and got a step further. I was now able to get into the router's shell by using default superuser login. But I didn’t know how to get the web access credentials from there. After googling some and a bit of trial and error, I got comfortable using cd, ls and cat commands. I hoped that some file in the router would have the web access credentials stored in cleartext. I spent the next hour just using cat to read every file. Luckily, I stumbled upon NVRAM which is used to store all config details of router. I went through all the output from cat (it was a lot of output) and discovered http_user and http_passwd. I tried that in the web interface and when it worked, my happiness knew no bounds. I literally ran across the floor screaming and shouting.
I knew nothing about hiding my tracks and soon my hostel’s admin found out I was tampering with the router's settings. But I was more than happy to share my discovery with him.
This experience planted a seed inside me and I went on to become the admin next year and eventually switch careers.
So that’s the story of how I met bash.
Thanks for reading!10 -
Me: *Playing around with bash on Windows*
Friend: Can you hack my Facebook account?
Me: I already did...
*moments of awkward silence*4 -
I really, honestly, am getting annoyed when someone tells me that "Linux is user-friendly". Some people seem to think that because they themselves can install Linux, that anyone can, and because I still use Windows I'm some sort of a noob.
So let me tell you why I don't use Linux: because it never actually "just works". I have tried, at the very least two dozen times, to install one distro or another on a machine that I owned. Never, not even once, not even *close*, has it installed and worked without failing on some part of my hardware.
My last experience was with Ubuntu 17.04, supposed to have great hardware and software support. I have a popular Dell Alienware machine with extremely common hardware (please don't hate me, I had a great deal through work with an interest-free loan to buy it!), and I thought for just one moment that maybe Ubuntu had reached the point where it just, y'know, fucking worked when installing it... but no. Not a chance.
It started with my monitors. My secondary monitor that worked fine on Windows and never once failed to display anything, simply didn't work. It wasn't detected, it didn't turn on, it just failed. After hours of toiling with bash commands and fucking around in x conf files, I finally figured out that for some reason, it didn't like my two IDENTICAL monitors on IDENTICAL cables on the SAME video card. I fixed it by using a DVI to HDMI adapter....
Then was my sound card. It appeared to be detected and working, but it was playing at like 0.01% volume. The system volume was fine, the speaker volume was fine, everything appeared great except I literally had no fucking sound. I tried everything from using the front output to checking if it was going to my display through HDMI to "switching the audio sublayer from alsa to whatever the hell other thing exists" but nothing worked. I gave up.
My mouse? Hell. It's a Corsair Gaming mouse, nothing fancy, it only has a couple extra buttons - none of those worked, not even the goddamn scrollwheel. I didn't expect the *lights* to work, but the "back" and "Forward" buttons? COME ON. After an hour, I just gave up.
My media keyboard that's like 15 years old and is of IBM brand obviously wasn't recognized. Didn't even bother with that one.
Of my 3 different network adapters (2 connectors, one wifi), only one physical card was detected. Bluetooth didn't work. At this point I was so tired of finding things that didn't work that I tried something else.
My work VPN... holy shit have you ever tried configuring a corporate VPN on Linux? Goddamn. On windows it's "next next next finish then enter your username/password" and on Linux it's "get this specific format TLS certificate from your IT with a private key and put it in this network conf and then run this whatever command to...." yeah no.
And don't get me started on even attempting to play GAMES on this fucking OS. I mean, even installing the graphic drivers? Never in my life have I had to *exit the GUI layer of an OS* to install a graphic driver. That would be like dropping down to MS-DOS on Windows to install Nvidia drivers. Holy shit what the fuck guys. And don't get me started on WINE, I ain't touching this "not an emulator emulator" with a 10-foot pole.
And then, you start reading online for all these problems and it's a mix of "here are 9038245 steps to fix your problem in the terminal" and "fucking noob go back to Windows if you can't deal with it" posts.
It's SO FUCKING FRUSTRATING, I spent a whole day trying to get a BASIC system up and running, where it takes a half-hour AT MOST with any version of Windows. I'm just... done.
I will give Ubuntu one redeeming quality, however. On the Live USB, you can use the `dd` command to mirror a whole drive in a few minutes. And when you're doing fucking around with this piece of shit OS that refuses to do simple things like "playing audio", `dd` will restore Windows right back to where it was as if Ubuntu never existed in the first place.
Thanks, `dd`. I wish you were on Windows. Your OS is the LEAST user friendly thing I've ever had to deal with.31 -
I download a lot of different stuff all the time. Often times I don't actually get around to cleaning it up. Thus, I decided I needed to build a script to further encourage my bad habits.
Here I've built a script for both Windows and Linux. It's designed to take all the files in the current directory and move them into their own folders based on their extensions. Why is this useful?
It's fucking useful when you're not having to swim through fucking mountains of content.
Anyways without any further ado here are the scripts.
Linux
#!/bin/bash
for i in *.*; do
filename=$(basename -- "$i")
extension="${filename##*.}"
extension="$extension"files
mkdir "$extension"
mv "$i" "$extension"
done
Windows
@echo off
for %%i in (*.*) do (
if not exist %%~xifile md %%~xifile
)
for %%i in (*.*) do (
if "%%i" NEQ "movingFiles.bat" move "%%i" "%%~xifile"
)15 -
To those that think they can't make it.
To those that are put down by those that don't understand you.
And to those that have never had a dream come true.
Not a rant, but the story of how I got into programming
I've always been into tech/electronics. I remember being told once that when I was 3, I used to take plug sockets to pieces. When I was 7, I built a computer with my dad.
There isn't a thing in my room that hasn't been dismantled and put back together again. Except for the things that weren't put back together again ;)
When I was 15, I got a phone for Christmas. It was a pretty crappy phone, the LG P350 (optimus ME). But I loved it all the same.
However I knew it could do a lot more. It ran a bloated, slow version of Android 2.2.
So I went searching, how can I make it faster, how to make it do more. And I found a huge community around Android ROMs. Obviously the first thing I did was flashed this ROM. Sure, there were bugs, but I was instantly in love with it. My phone was freed.
From there I went on to exploring what else can be done.
I wanted to learn how to script, so over the weekend I wrote a 1000 line batch (Windows cmd) script that would root the phone and flash a recovery environment onto it. Pretty basic. Lots of switch statements, but I was proud of it. I'd achieved something. It wasn't new to the world, but it was my first experience at programming.
But it wasn't enough, I needed more.
So I set out to actually building the roms. I installed Linux. I wanted to learn how to utilise Linux better, so I rewrote my script in bash.
By this time, I'd joined a team for developing on similar spec'd phones. Without the funds to by new devices, we began working on more radical projects.
Between us, we ported newer kernels to our devices. We rebased much of the chipset drivers onto newer equivalents to add new features.
And then..
Well, it was exam season. I was suffering from personal issues (which I will not detail), and that, with the work on Android, I ended up failing the exams.
I still passed, but not to the level I expected.
So I gave up on school, and went head first into a new kind of development. "continue doing what you love. You'll make it" is what I told myself.
I found python by contributing to an IRC bot. I learnt it by reading the codebase. Anything I didn't understand, I researched. Anything I wanted to do, google was there to help me through it.
Then it was exam season again. Even though I'd given up on school, I was still going. It was easier to stay in than do anything about it.
A few weeks before the exams, I had a panic attack. I was behind on coursework, and I knew I would do poorly on exams.
So I dropped out.
I was disappointed, my family was disappointed.
So I did the only thing I felt I could do. I set out to get a job as a developer.
At this stage, I'd not done anything special. So I started aiming bigger. Contributing to projects maintained by Sony and Google, learning from them. Building my own projects to assist with my old Android friends.
I managed to land a contract, however due to the stresses at home, I had to drop it after a month.
Everything was going well, I felt ready to get a full time job as a developer, after 2 years of experience in the community.
Then I had to wake up.
Unfortunately, my advisors (I was a job seeker at the time) didn't understand the potential of learning to be a developer. With them, it's "university for a skilled job".
They see the word "computer" on a CV, they instantly say "tech support".
I played ball, I did what I could for them. But they'd always put me down, saying I wasn't good enough, that I'd never get a job.
I hated them. I'd row with them every other day.
By God, I would prove them wrong.
And then I found them. Or, to be more precise, they found me. A startup in London got in contact with me. They seemed like decent people. I spoke with their developers, and they knew their stuff, these were people that I can learn from.
I travelled 4 hours to go for an interview, then 4 hours back.
When I got the email saying they'd move me to London, I was over the moon.
I did exactly what everyone was telling me I couldn't do.
1.5 years later, I'm still working with them. We all respect each other, and we all learn from each other.
I'm ever grateful to them for taking a shot with me. I had no professional experience, and I was by no means the most skilled individual they interviewed.
Many people have a dream. I won't lie, I once dreamed of working at Google. But after the journey I've been through, I wouldn't have where I am now any other way. Though, in time, I wish to share this dream with another.
I hope that all of you reach your dreams too.
Sorry for the long post. The details are brief, but there are only 5k characters ;)23 -
TLDR: In defense of Powershell - the rant:
I don’t get the Powershell hate.
You don’t hate a screwdriver for not being able to turn a nut, you just *don’t use a screwdriver to turn a nut*
Once you recognize what the tool is good for and you don’t try to use it like Bash, it’s wildly powerful, and satisfying to use in a way Cmd.exe never was.
Cygwin or a Linux Subsystem can only go so far on a Windows computer. You’re dealing with two fundamentally different OS architectures. It makes sense you’d need different tools.
And like it or not, Microsoft owns the non-tech-user desktop , corners the non-tech server business market, and Active Directory is THE tool for managing Windows desktops on a large scale - So Wanblows is not going away anytime soon.
Automation without some weird ass sysVol batch login script is finally possible. Anyone who knows .Net classes can leverage their methods from directly within Powershell. Remote management of headless Windows servers is now a reality. If you have an Office 365 Exchange server you can literally Powershell remote to it for management, just like your favorite cloud hosted Linux distribution.
No one said Windows is a better OS, but an object based shell on an object based OS *makes sense*. It’s useful for its environment. Let it be.10 -
Saturday plan: serious switch to Linux.
1. Installs Fedora, lookin nice.
2. Let's update it, fails to boot.
3. Nouveau driver fails, lets install proprietary one.
4. dnf install dependencies, repo returns 503
5. Be stuck on a 640x480 bash.
6. Boot windows, start overwatch.15 -
Not just another Windows rant:
*Disclaimer* : I'm a full time Linux user for dev work having switched from Windows a couple of years ago. Only open Windows for Photoshop (or games) or when I fuck up my Linux install (Arch user) because I get too adventurous (don't we all)
I have hated Windows 10 from day 1 for being a rebel. Automatic updates and generally so many bugs (specially the 100% disk usage on boot for idk how long) really sucked.
It's got ads now and it's generally much slower than probably a Windows 8 install..
The pathetic memory management and the overall slower interface really ticks me off. I'm trying to work and get access to web services and all I get is hangups.
Chrome is my go-to browser for everything and the experience is sub par. We all know it gobbles up RAM but even more on Windows.
My Linux install on the same computer flies with a heavy project open in Android Studio, 25+ tabs in Chrome and a 1080p video playing in the background.
Up until the creators update, UI bugs were a common sight. Things would just stop working if you clicked them multiple times.
But you know what I'm tired of more?
The ignorant pricks who bash it for being Windows. This OS isn't bad. Sure it's not Linux or MacOS but it stands strong.
You are just bashing it because it's not developer friendly and it's not. It never advertises itself like that.
It's a full fledged OS for everyone. It's not dev friendly but you can make it as much as possible but you're lazy.
People do use Windows to code. If you don't know that, you're ignorant. They also make a living by using Windows all day. How bout tha?
But it tries to make you feel comfortable with the recent bash integration and the plethora of tools that Microsoft builds.
IIS may not be Apache or Nginx but it gets the job done.
Azure uses Windows and it's one of best web services out there. It's freaking amazing with dead simple docs to get up and running with a web app in 10 minutes.
I saw many rants against VS but you know it's one of the best IDEs out there and it runs the best on Windows (for me, at least).
I'm pissed at you - you blind hater you.
Research and appreciate the things good qualities in something instead of trying to be the cool but ignorant dev who codes with Linux/Mac but doesn't know shit about the advantages they offer.undefined windows 10 sucks visual studio unix macos ignorance mac terminal windows 10 linux developer22 -
I'm investigating PRs for a super legacy codebase. Someone else already approved the PRs -- somebody who has never even run the code or had the project set up before.
The codebase hasn't been touched in two years, and it hasn't been updated in four. It's using CoffeeScript, Node v0, Electron v0.30, and Angular 1.x. I obviously don't have a dev environment anymore, either, and my previous dev env was on Windows, so I'll have to translate my custom build utilities from batch to bash (or much more likely: node).
To make matters worse: the PRs break both the initial project setup and the project itself (NPM can no longer find some installed packages, among other problems). And. someone already merged them into master. So: fuck.
I'm going to yell at the author and tell him to fix his shit. Why? Because when I check out my last commit prior to his PRs, everything works perfectly. Surprise!
I was so done with this project two and a half years ago. I'm still so done with it. I just don't want to maintain this anymore, or honestly even look at it. I would happily rebuild the project from scratch, but updating it from the days of IE8? No way.9 -
I seriously do not understand the rants against Windows.
I love Windows 10 (got as free upgrade from MS), and have no issues with MacOS or Linux OS. I use them as well but do all serious work on Windows.
All my life, I have worked on business / commercial side and picked up Web development in last couple of years. I started using computers on DOS in 1992, and shifted to Windows 3.0 in 1995. There was no Mac or MacOS back then.
For serious work, I purchased a old Dell Precision M4700 workstation grade laptop with quad-core i7, at throwaway price, got 32GB RAM, 2.4TB (1x2 TB + 400gb) of SSD on super sale online, and installed it myself. It easily supports dual 4k monitors.
Git-bash on windows allows all the necessary linux command line on windows. Though not tried, Windows 10 allows embedded Ubunutu with linux terminal. Web development tools like - VSCode, git, github / bitbucket clients, NVM/Node, React / Redux / Webpack / Gatsby / Jest, REST clients, GraphQL client and server, Graph Server, Chrome PWA / Chrome Dev Tools, http/Websocket/WebRTC interception, Google Firebase SDKs, AWS sdks, cloud utilities, CI/CD tools work flawlessly. Windows even has its own package manager for applications.31 -
PowerShell is the slowest, most pathetic, unelegant attempt at copying bash.
The Command-Names are stupid and impossible to remember, the syntax is too awkward to put a name on it.
And holy shit how painfully slow can it be!
It feels like it's Java running in a Windows 95 VM running on a dead cow that was revived against its own will by a Cortana ghost that pretends to be GDPR-compliant.7 -
Just finished setting up bash on Windows 10. I never thought I could be so happy, installed git immediately.7
-
In the Ruhr area (Germany) we have some very old, very strange words with strange meanings. One of those words is ‚Prutscher‘.
A Prutscher refers to a person who does things but never gets a good result, due to lack of knowledge or simple carelessness. Most of the time, Prutschers are people who are interested in certain subjects and often work in the related jobs, but who lack the motivation to properly train themselves, learn what there is to learn and to always keep up with their technologies .
Here are a few examples I've stumbled upon so far in my career:
- Developers in their 60's who read a book about PHP 25 years ago and decided to become a software developer. Since then haven't read anything about it. Who then now build huge spaghetti monoliths for large companies, in which they prefix every function, every variable and constant with their initials and, of course, use Hungarian notation.
- People who read half a fucking tutorial about <insert any fancy js framework here> and start blogging/tweeting about it
- Senior web developers who need to be told what the fuck CORS is and who can't even recognize CORS related errors in their browser console.
- People who have done nothing else for 18 years than building websites for companies on Wordpress 1.x and writing few lines of PHP and Javascript from time to time. Those who are now applying as a frontend dev due to the difficult economic situation and are surprised that they are not accepted due to a lack of experience.
- Developers who are the only ones working on Windows in the team and ask their Linux colleagues for help when Windows starts bitchin.
- People who have been coding for 30 years, have worked with ~42 languages and don't know the difference between compiled and interpreted languages in the job interview.
- Chief developers at a large newsletter-publisher who think it's a good idea to build your own CMS (due to a lack of good existing ones, of course).
- Developers who have been writing PHP applications for multinational corporations for 25 years and cannot explain how PHP is executed. They don't even know what the fucking OPcache is, let alone fpm. FML
- People who call themselves professional developers but never ever heard of DRY, KISS, boy-scout rule, 12-Factor App, SOLID, Clean Code, Design Patterns, ...
- Senior developers wondering why the bash script won't run on their fucking Windows machine.
- Developers who consider Typescript to be a hindrance and see no value in it.
- Developers using ftp for deployments in 2022
- Senior Javascript Developer applying for a job and for whom Integer is a primitive data type in JS.
- Developers who prefer to code without frameworks and libraries because they are only an unnecessary burden/overhead and you can quickly code everything up yourself.
- Developers who think configuring their server(s) manually is a good idea.
You fucking Prutscher. What you have already cost me in terms of work and nerves. I can't even put it into words how deeply I despise you. I have more respect for the chewing gum that has been stuck in my damn trash can for the past 3 years than I do for you guys. You are the disgrace of our profession. I will haunt you in your dreams and prefix every fucking synapse of your brain with MY initials.
As a well-known german band once sang in a very fitting song: I wouldn't even piss on you if you were on fire.
If you recognized yourself in one of the examples here: FUCK YOU!29 -
Powershell should die.
I have a simple bash script I made that allows me to download almost any video from the internet. Works great and took me only a few minutes to make.
The only issue is it bash meaning Windows doesn't run it natively. I am not able to install linux Subsystem or bash, etc on the server.
So I decided to rewrite it in powershell thinking it should be Okay and I have never struggled with so much retardedness in my life. After 40+ tabs in chrome and a massive headache, it finally works.
Microsoft should kill powershell entirely and rethink their scripting language.
Also VBA should have died 10 years ago.16 -
Ahahaha
More of a suprise.
Just by error double clicked on WINDOWS machine on a BASH (.sh) script.
Welp, some randon bash processor appered and script was executed correctlly.
I almost shit my pants, it's a script which changes production env.
I was expecting a notepad lol9 -
I finally fucking made it!
Or well, I had a thorough kick in my behind and things kinda fell into place in the end :-D
I dropped out of my non-tech education way too late and almost a decade ago. While I was busy nagging myself about shit, a friend of mine got me an interview for a tech support position and I nailed it, I've been messing with computers since '95 so it comes easy.
For a while I just went with it, started feeling better about myself, moved up from part time to semi to full time, started getting responsibilities. During my time I have had responsibility for every piece of hardware or software we had to deal with. I brushed up documentation, streamlined processes, handled big projects and then passed it on to 'juniors' - people pass through support departments fast I guess.
Anyway, I picked up rexx, PowerShell and brushed up on bash and windows shell scripting so when it felt like there wasn't much left I wanted to optimize that I could easily do with scripting I asked my boss for a programming course and free hands to use it to optimize workflows.
So after talking to programmer friends, you guys and doing some research I settled on C# for it's broad application spectrum and ease of entry.
Some years have passed since. A colleague and I built an application to act as portal for optimizations and went on to automate AD management, varius ssh/ftp jobs and backend jobs with high manual failure rate, hell, towards the end I turned in a hobby project that earned myself in 10 times in saved hours across the organization. I felt pretty good about my skills and decided I'd start looking for something with some more challenge.
A year passed with not much action, in part because I got comfy and didn't send out many applications. Then budget cuts happened half a year ago and our Branch's IT got cut bad - myself included.
I got an outplacement thing with some consultant firm as part of the goodbye package and that was just hold - got control of my CV, hit LinkedIn and got absolutely swarmed by recruiters and companies looking for developers!
So here I am today, working on an AspX webapp with C# backend, living the hell of a codebase left behind by someone with no wish to document or follow any kind of coding standards and you know what? I absolutely fucking love it!
So if you're out there and in doubt, do some competence mapping, find a nice CV template, update your LinkedIn - lots of sources for that available and go search, the truth is out there! -
!rant
Starting from today, I officially love windows and ubuntu equally .
Now I can game whenever I want without switching OS.
I think bash on win is all I ever wanted and I really thank MS for it.8 -
am i the only one who's currently happy using bash on Windows 10?
don't get me wrong. i used to use ubuntu and elementary os for my dev use. but after win10 bash update i can work and play at a same os xP which is FTW for me.6 -
@JoshBent and @nikola1402 requested a tutorial for installing i3wm in a windows subsystem for linux. Here it is. I have to say though, I'm no expert in windows nor linux, and all I'm going to put here is the result of duckduck searches, reddit and documentation. As you will see, it isn't very difficult.
First things first: Install WSL. It's easy and there's a ton of good tutorials on this. I think I used this one: https://msdn.microsoft.com/en-us/...
Once you got it installed, I guess it would be better to run "sudo apt-get update" to make sure we don't encounter many problems.
Install a windows X server: X is what handles the graphical interface in linux, and it works with the client/server paradigm. So what we'll do with this is provide the linux client we want to use (in this case i3wm) with an X server for it on windows. I guess any X server will do the work, but I highly recommend vcXsrv. You can download it here:
https://sourceforge.net/projects/...
for i3 just "sudo apt-get install i3"
Configurations to make stuff work:
open your ~/.bashrc file ("nano ~/.bashrc" vim is cool too). You'll have to add the following lines to the end of it:
"""
export DISPLAY=:0.0 #This display variable points to the windows X server for our linux clients to use it.
export XDG_RUNTIME_DIR=$HOME/xdg #This is a temporary directory X will use
export RUNLEVEL=3
sudo mkdir /var/run/dbus #part of the dbus fix
sudo dbus-daemon --config-file=/usr/share/dbus-1/system.conf #part of the dbus fix
"""
Ok so after this we'll have a functional x client/server configuration. You'll just have to install your desktop enviroment of choice. I only installed i3wm, but I've seen unity and xfce working on the WSL too. There are still some files that X will miss though.
*** Here we'll add some files X would miss and :
With "nano ~/.xinitrc" edit the xinitrc to your liking. I only added this:
"""
#!/usr/bin/env bash
exec i3
"""
Then run "sudo chmod +x ~/.xinitrc" to make it an excecutable.
Then, to make a linking file named xsession, run:
"ln -s ~/.xinitrc ~/.xsession"
Now you'll be able to run whatever you put in ~/.xinirc with:
"dbus-launch --exit-with-session ~/.xsession"
There's a ton of personalisation to be done, but that would be a whole new tutorial. I'll just share a github repo with my dotfiles so you can see them here:
https://github.com/DanielVZ96/...
SHIT I ALMOST FORGOT:
Everytime you open any graphical interface you'll need to have the x server running. With vcXsrv, you can use X launch. Choose the options with no othe programs running on the X server. I recommend using "one window without title bar".10 -
TL;DR; windows XP + bat scripts + fascination about being able to make things yourself.
I was born and raised in a village. And the thing about living in a village is that you are free :) Among all the other freedoms you are also free to build your own solutions to various domestic problems, i.e. to build stuff. This is one of the things that fascinates me about living outside the city.
When I finally was old enough (and had the means to, i.e. a computer) to understand that programming is something that allows you to build your own solutions to computer problems, it got to me.
With win 3.1 I was still too fresh and too young. With win 95 I was more interested in playing with neighbours outdoors. With win 98 I was a bit too busy at school. But with win XP the time had come. I started writing automation solutions for windows administration using .bat scripts (.vbs was and still is somewhat repelling to me). I no longer needed to browse Russian forums and torrent sites to find a solution to a problem I had! That was amazing!!! [esp. when my Russian was very weak].
That was the time when I built my first sort-of-malware - a bat script downloading and installing Radmin server, uploading computer's IP and admin credentials to my FTP.
I loved it!
However, I'd stumbled upon may obstacles when writing with batch. I googled a lot and most of the solutions I found were in bash (something related to Linux, which was a spooky mystery to me back then). Eventually, I got my courage together and installed ubuntu. Boy was I sorry... Nothing was working. I was unable to even boot the thing! Not to mention the GUI...
Years later I tried again with ubuntu [7.10 I think.. or 7.04] on my Pavilion. Took me a looooot of attempts but I got there. I could finally boot it. A couple of weeks later I managed to even start the GUI! I could finally learn bash and enjoy the spectacular Compiz effects (that cube was amazing).
I got into bash and Linux for the next several years. And then I thought to myself - wait, I'm writing scripts that automate other programs. Wouldn't it be cool I I could write my own programs that did exactly what I wanted and did not need automation? It definitely would! I could write a program that would make sound work (meaning no more ALSA/PA headaches!), make graphics work on my hardware, make my USB audio card to be set to primary once connected and all the other amazing things! No more automation -- just a single program or all of that!
little did the naive me knew :)
I started with python. I didn't like that syntax from the beginning :/ those indentations...
Then I tried java. Bucky (thenewboston), who likes tuna sandwiches, on my phone all the free time I had. I didn't learn anything :/ Even tried some java 101 e-book. Nothing helped until I decided to write some simple project (nothing fancy - just some calculations for a friend who was studying architecture).
I loved it! It sounds weird, but I found Swing amazing too. With that layout manager where you have to manually position all the components :)
and then things happened and I quit my med studies and switched to programming. Passed my school exams I was missing to enter the IT college and started inhaling every bit of info about IT I could get my hands on (incl outside the college ofc).
A few more stepping stones, a few more irrelevant jobs to pay my bills in the city, and I got to where I am now.5 -
Microsoft owns github
Microsoft owns windows
Microsoft owns powershell
Why then, why exactly, is it so fucking hard to get ssh private keys for github, up and running on windows powershell.
I tried to change permissions on files but then it broke the git-bash implementation 😭.
Fuck it !! 😭😭9 -
Switched back to windows because I needed IIS for work and I did miss having a touch screen (could not get driver working on Linux).
A few gripes.
I mean, the standard "oh great, half a day downloading and updating my machine" applies.
The thing I forgot about Windows is that after everything I do it wants to restart. Updating itself forced the computer to restart several times, wtf.
Powershell (ironically) holds a shadow of bash's power
So many "power user" actions are done with a gui, dear lord give me a terminal command and a man page any day over the convoluted way to do some actions. Changing permissions for IIS was several layers of gui dialogues, where it would be a couple of commands in bash.
Sorry to be unoriginal and moan about an OS, as an end user windows is great and a lot more streamlined and arguably prettier, but as a programmer it doesn't make life half as easy as the realm of *nix1 -
F*cking windows and thair stupid alternative line endings. Spend way to much time on trying to make my bash file work. Aparently i copied some command from a website that used windows endings. Wich f*cked everything up6
-
Fuck you windows 10. Fuck you private keys. Fuck you tortoise git. Fuck you git bash. Fuck you cygwin. Want 3x hours of my life back. Had an auth problem... Had to reinstall all the above on windows to connect to my private repo. Took me 5 minutes to connect after reinstalling all the tools. Grrrrrrr. And I'll never know why it wouldn't connect apart from fatal protocol error: bad line length character..I tried ever stack overflow answer... I nearly bricked my gitlab CE...and it was windows being a motherslut8
-
This is a story of how I did a hard thing in bash:
I need to extract all files with extension .nco from a disk. I don't want to use the GUI (which only works on windows). And I don't want to install any new programs. NCO files are basically like zip files.
Problem 1: The file headers (or something) is broken and 7zip (7z) can only extract it if has .zip extension
Problem 2: find command gives me relative to the disk path and starts with . (a dot)
Solution: Use sed to delete dot. Use sed to convert to full path. Save to file. Load lines from file and for each one, cp to ~/Desktop/file.zip then && 7z e ~/Desktop/file.zip -oOutputDir (Extract file to OutputDir).
Problem 3: Most filenames contain a whitespace. cp doesn't work when given the path wrapped in quotes.
Patch: Use bash parameter substitution to change whitespace to \whitespace.
(Note: I found it easier to apply sed one after another than to put it all in one command)
Why the fuck would anyone compress 345 images into their own archive used by an uncommon windows-only paid back-up tool?
Little me (12 years old) knowing nothing about compression or backup or common software decided to use the already installed shitty program.
This is a big deal for me because it's really the first time I string so many cool commands to achieve desired results in bash (been using Ubuntu for half a year now). Funny thing is the images uncompressed are 4.7GB and the raw files are about 1.4GB so I would have been better off not doing anything at all.
Full command:
find -type f -name "*.nco" |
sed 's/\(^./\)/\1/' |
sed 's/.*/\/media\/mitiko\/2011-2014_1&/' > unescaped-paths.txt
cat unescaped-paths.txt | while read line; do echo "${line// /\\ }" >> escaped-paths.txt; done
rm unescaped-paths.txt
cat escaped-paths.txt | while read line; do (echo "$line" | grep -Eq .*[^db].nco) && echo "$line" >> paths.txt; done
rm escaped-paths.txt
cat paths.txt | while read line; do cp $line ~/Desktop/file.zip && 7z e ~/Desktop/file.zip -oImages >/dev/null; done3 -
New employee started this week, doesn't know anything about bash because she's a Windows user :/ She'll receive a crash course today by me (she has bash installed on Windows 10 because we require it for some of our tools).3
-
I don't usually bash on any operating systems, but if I wanted to search for "how to get help in windows 10" on fuckings Bing, I'd do that myself. I'd rather have F1 do something useful.
This was probably MS customer service's idea to make their life easier.2 -
Fuck windows!
Now that I have your attention. My problem is with "IAR embedded workbench", not so much with windows but I'll get to that.
I've used that IDE for a few years.. 2 years ago. Since then I apparently forgot how to even create a project from scratch with adding all the necessary libraries and all that.
My initial deal with a client was to give them a solution using whatever tools I deem necessary. As I recently moved to linux and IAR is not available for that os.. and I also enjoyed working with CLion and PyCharm which Are available I decide to use CLion to write my C project.
A problem was that to compile code for microcontrollers I need tools unsupported by CLion.. oh well. I can do all the compilation and uploading of the code through terminal .. so I make a bash script that does it all. Super convenient. Development is going well and all.. until they ask me for the project.
I sent them the project so that they can see my progress. They can't do shit with what I gave them because they don't even have make on their machines let alone the compiler. All they have is IAR. But the guy that wants to see the code is not really a programmer.. he is a hardware specialist so I can't expect him to do anything more than use what he knows. He doesn't need or want to learn more right now.
So I go to windows and start porting my code to an IAR project and 2 days later I am still stuck with it. FUCK. Not only was the installation process horrible but the tools I wanted to install additionally did not work as promised either.
I know it took me about 2 days to setup all I needed on linux but I was enjoying it every step of the way. While this garbage is frustrating me so much. The fact that I used to do it before adds to the pain.
I am this close to telling them to just look at my code in notepad and I can setup a vm for them in which they can compile it if they really really need to.
If they just told me from the very start that they want me to work with IAR that would have been fine. I would have never seen the easier way and would have gladly figure it out then. Not now.1 -
Fall Creators Update did some changes to Bash on Windows, first they renamed it to WSL(Windows Subsystem for Linux) and now you can have multiple distros on it.
They also added it to Windows Server.
I have no idea why people would use Windows Server, but I guess that if you are forced to use it, you can now use Linux utilities on it, so woot? I guess.5 -
So I'm trying out docker and see how I can make use of it, current setup:
1. Ubuntu on VM and Mac for Asp.Net core development
2. Windiws for MS only stuff like SQL Server
3. Ubuntu Server on VM and is running docker images: MS image for SQL and Ms image for dinner core.
What I did so far one script which will handle updating SQL Server database on windows with the changes done on docker SQL image
Then publish website from Mac or Ubuntu to docker image. I have yet to find a way to execute scripts remotely on a docker image using bash script from a remote
What should I do next? And for home setup go for Ubuntu server or CentOS? Any recommended packages for server administration? Workflow ..etc.?2 -
I'm a mac AND a PC! Are you? I actually quite like both of them.
My dev setup has both operating systems, with a shared mouse and keyboard (using Synergy) -> and I love it! It feels like I get the ability to do anything. There are some apps I prefer on the WIndows side and others that are fine on the mac. I use git and dropbox to share dev files between the two seamlessly.
I come from a Linux background, so I like that I can use bash on the mac, although on the PC I use Powershell mostly. I also have used the Ubuntu linux subsystem on the PC very effectively.
I was originally forced into the situation due to iPhone mobile development - now I don't mind at all!
On the mobile side I happily switch between iOS and Android all the time.
Love the way so many technologies exist to let you work across platforms so well.
Anyone else use both at the same time?10 -
Teaching advanced IT topics like programming or system management has become much harder in only about five years, because many 20 year olds do not know how to effectively work with the file system. I don't blame them: the Microsoft Office applications nudge you strongly towards storing everything in the Cloud (saving files locally requires extra clicks), and on Windows, the folders C:\Users and C:\ are almost hidden in he respective dialogs (open file, save file). Same on macOS. Students also keep loosing files. This used to be an excuse for not doing the work; nowadays, you're able to find the files on their systems by using appropriate tools (e.g. `find`, installed with Git Bash on Windows). And don't get me started on touch-typing... hell, those kids were fast ten years ago with a proper keyboard! Now they're fast with their smartphone, but painstakingly slow on an actual keyboard.8
-
Bash on Windows is incoming soon! As a dual boot win10/Ubuntu user I am pretty psyched. Curious as to what you all think, and opinions from insider program participants.
I just hope it isn't half-assed.4 -
And finally my favorite OS on my favorite laptop.
Had trouble in the past with wifi and straight up not booting.
But Loki fixes everything, except the screenshot button but ok fine. I can at least use linux normally. Till now I was using bash on windows and tbh it was good.1 -
Take a few seconds to reflect on the insane amount of human time and effort that goes into making development bearable or just possible on Windows.
A few examples: bash (MINGW & MSYS), make, symlinks, docker (docker-toolbox, WSL), Apache (W/X/LAMP)1 -
Never trouble me when I am codong on bisual studio in windows. I will bash your head into my desk.
You read it roght, INTO my desk!5 -
So after hating on Windows toda y I learned it now has bash, WTF.
And it is basically debian.
So.. what do we think about it?10 -
I'm using git bash on Windows 10, tried WSL, but it is really messed up needs more documentation, i had multiple installs of node js and other stuff including node_modules
So using git bash, I have my own sweet .bashrc file which is awesome, using bash or WSL is kinda slow, just wanna know how you devs have set up your terminals.4 -
How well can bash be used on windows?
i've used it a bit now and it seems to work really well, but i'm wondering if it's possible to efficiently and fully work on it. Are there any drawbacks or missing functionallity that is a must for development but not implemented (yet) in bash ?
i'll be forced to work on windows and i'm wondering which option is better - VM or bash?12 -
Git bash on windows vm on a MacBook Pro,"ctrl-insert" to copy text,
Realised Mac doesn't have an insert key😂, shifted to cmder.3 -
emacs, git and a decent shell like bash with at least gnutools
emacs, because I was searching for the right editor for years
- multi-platform
- extensible
- ready to type (no fucking mode change for typing like vim)
- programming functions like auto indenting, syntax highlight, auto complete, etc.)
- multiple windows in any arrangement
Additionally
- it is completely programmable to do anything you want
- you can find a solution to most common development needs on the web
git, because
- it is usable from small personal projects to heavy duty development
- fast branching and checking out, switching between different workpaths within seconds
- basic version control offline, you only need to be online for remote consolidation
- you don't have to think much about structure from the beginning, if in doubt just commit and your work is saved, then arrange the result when you're ready
sh/bash-like shell with gnutools, because
- simple tools do their job and try not to be smarter than the user
- tools can be combined in any possible and impossible variants
- powerfull scripting (although sh-syntax is often annyoing)
- open as many shells as needed, no single-instance problem as with some GUI-tools
- extensible with gazillions of other tools
And best of all, all these tools are available on all widely used desktop OS. -
I've always been a strong critic of the mac operating system and apple in general for they're overpriced products. few months back my old laptop kicked the bucket and repairing it was not an option as i was sick of charging the laptop after every 3-4 hours and had to purchase a new laptop immediately. loooking at my options around 50k rs or 700$ all windows laptops available in indian markets sucked (except for lenovo 320s) so i made the shift to macbook air 2017.my daily work involves photoshop illustrator and a dash of premiere pro. I also work on nodeJS and python using the pycharm and atom IDEs. After using it for a month i feel in love with mac platform and macos. Its a wonderful experience. gone are the days of crashes and the windows updates (ugh). the boot of the laptop is like magic and softwares like wmware imovie and notes keynote are f**king awesome. Long hours of work have become fun rather than hell dealing with constant windows gimmicks and bad battery optimisation on linux.
An explanation why all developers (except for the ones who require high powered gpus) graphic designers should shift to macos rn.
Advantages of using mac
No forced updates update whenever now or a f'ing month later no probs.
better battery optimisation than linux
no more installing os again and again (ubuntu)
better vm than virtualbox (vmware)
terminal for running bash commands
no crahes
Xcode platform
trackpad is worlds better than the best windows trackpad
Disadvantages
some softwares not available for macos
storage is generally less on macbooks
UI is simple (less elaborated than windows)
Workarounds
get a vm and install linux(vmware fusion 8)
ps. u may not need it though
wine and wine bottler for using windows apps
get a microsd to sd adapter for macbook and expand storage5 -
As promissed.
Day #1 on THE other project. Nothing fancy, just setting up my dev env. Got a decent pc with all the required network permissions. And this time I got w10 [last year I was working there on w7 pc via rdp from another w7 laptop. Dont ask...]
of course no localadmin rights to set shit up. Downloaded all the installs, found someone who has admin rights to run them. I even managed to get admin powershell!
Ran all installers, enabled long paths support, env vars, tweak here, tweak there,... Installed git bash to at least have a taste of shell. Decided to try out wsl. Enabled the feature, didnt reboot right away.
Rebooted. 2xclick on ubuntu setup and I get an error claiming wsl is not ebabled. Wtf? Did I do it wrong? I see bash command is there now so I must have done it right. After some googling I found out that even though I can enable wsl, it doesnt work on my version of windows. It's too okd they say. Yeah, tx MS, that's very intuitive and user friendly!
Allright, my hopes to habe a decent sub-os died. Git bash it is :( but I miss tmux soooo much. Then I came across smth that caught my eye. Msys2 it's called. Apparently it's based on cygwin and has a pacman package manager! ´pacman -S tmux´ -- hippee-ka-yay motherfuckers! It's not the best terminal emulation, but it works quite allright and it has tmux. And netcat!
Banished to mouseclickerland still managed to find a good enough shell. Yayy!
So there it is. My first day's ups and downs, disappointments and discoveries.
If you know a better shell I could set up on w10, please, share -
I am uneasy with these VCS integrated editors. I feel like not everything is gonna be added. I still use git bash when on windows.1
-
Bash on Windows. Why? Good or evil? Thoughts?
Ok so I'm going to throw it out there, I'm a newcomer-ish to both Ubuntu and programming (2nd year CS). I'm using Ubuntu for the OS module. Can I run the C programmes in a "Windows" environment now?2 -
Why did my bash script stop working?
I accidentally pushed back to git from my windows machine, and it sharted on all my line endings. What a waste of an hour :(2 -
I wrote a bash script to launch 7 terminal windows, to be run when I am about to start work(need them for git on 7 projects in my work) in the morning.
Then, I added the script to my .bashrc.1 -
What's the simplest way to deploy a small node project to a private root server, possibly dockerized?
I feel like there are thousands of possibilities nowadays, like Ansible and so on. But is there something more in the the KISS way? Apart from just hacking a bash script together of course, it should be portable (and work on windows too).1 -
Okay, I hope a few people can help me with this; what are the benefits/reasons to use MS technologies? I'm talking about .NET, ASP, Windows Server, Powershell...
I've never understood it. I love Nodejs because you don't have any packages unless you ask for them. Alpine Linux is amazing! It runs on 8MB of RAM from fresh and doesn't need much more space to install.
You want .NET core? 140MB download. You're configuring database connection strings? Feel free to type in whatever you like, it'll parse and replace with some magic variables that have come from some other random file.
I was using Powershell recently, needed to set an env variable. Bash is happy with "export name=value". You want to do that in Powershell? I just googled it and found an entire 40-minute read discussing how to set env vars. Why?! It should be one command, and I don't know who thought that "Get-ChildItem" was _obviously_ referring to env variables.
It seems to me that everywhere MS has got their hands on development-wise, it inherits the typical sales bullshit. No no, you can't call them "websockets", they have to be branded "SignalR" and add tons of overhead. You can't say "disable notifications" it has to be "focus assist". I'm really surprised something as simple as a keyboard hasn't become a "varied user input device" or something of the like.
Am I alone in thinking this?4 -
!rant
It's rather a question. I am thinking of changing my Linux distro from Lubuntu to Arch Linux or Gentoo.
My main reason is that I want to achieve customizability and the freedom that Linux offer and also build my distro from ground up.
Second reason is that I want to switch a little bit I am using Lubuntu for 2-3 years and is worked great for me. Especially because I have an older laptop (Asus K53E) and windows 7 worked really slow on it. But with this distro, everything works much faster and has all features and tools for programming that I need despite being minimalistic.
I have also used other distros before this one. These are some of them that I can remember Ubuntu, Xubuntu, Mint, Bodhi Linux.
I would say for myself that I am quite familiar with terminal and I also wrote some bash scripts on complexity level like these: https://github.com/RokKos/..., https://github.com/RokKos/...
But my main concern is that would fail to install any of this two distros or that I would damage my computer beyond repair...
So my main questions are:
What are you experience with this two distros?
Did you have any troubles installing and setting up distro?
What is overall experience with this two distros?
Was is worth to switch to any of these two?
And you could also share what distro you are using and maybe some rants that occur using them.14 -
Stupid Windows and their super generic error codes for why the 1607 release cannot download.
I just want bash on my windows machine!1 -
I'm almost ashamed to ask this but...
I need help with git, not GitHub but just plain git.
So I have Linux on windows because I realised all i need is bash, not all of Linux. So I'm taking a tutorial on git because... I'm a programmer, I need to know this. So I am also doing some demo stuff on my own and... I have no clue where to put the file I want to handle with git. In pretty sure I should put it in the file containing the .git folder, which includes .bash_history, etc. But when I git init and git status, it doesn't see it, so am i doing something wrong?
To be specific the test file is in
C:///Users/...6 -
Annoying monday - nearly no code but useless things like trying to use a Windows keyboard on some old MacOS X
On the other hand: for the first time I wrote a one line for loop in bash that worked - without googling!1